在下面这段程序里面有一个while语句,但是语句后直接就跟着分号,这和普通的while语句有什么区别吗? 管辖的范围有多大?class Bank
{
private Account[] account;
private boolean locked;
public Bank()
{
account = new Account[100];
for(int i = 0; i < account.length; i++)
{
account[i] = new Account();
}
locked = false;
}
public void transferMoney(int accountNumber, float amount)
{
while(locked);
locked = true;
float oldBalance = account[accountNumber].getBalance();
float newBalance = oldBalance + amount;
account[accountNumber].setBalance(newBalance);
locked = false;
}
}
while(locked)要是一直包含到locked = false;和现在的有区别吗?
{
private Account[] account;
private boolean locked;
public Bank()
{
account = new Account[100];
for(int i = 0; i < account.length; i++)
{
account[i] = new Account();
}
locked = false;
}
public void transferMoney(int accountNumber, float amount)
{
while(locked);
locked = true;
float oldBalance = account[accountNumber].getBalance();
float newBalance = oldBalance + amount;
account[accountNumber].setBalance(newBalance);
locked = false;
}
}
while(locked)要是一直包含到locked = false;和现在的有区别吗?
while(locked){
try{ wait(); }
catch(InterruptedException e){}
}
locked = true;
...
}