//while用于循环语句,而if用于判断和分支语句。由于你并没有指明是什么程序,只能泛泛而谈了。if 语句中,常用格式为:if(判断条件){执行语句}上面的结构,只是进行一次判断。
//While(判断条件)do{执行语句},先进行判断,而运行执行语句。执行语句运行完毕,自动返回继续判断while中的条件是否符合,符合的话,继续运行执行语句,不符合,则退出循环。
在同步问题里
public synchronized void out()
{
使用if就判断一次就等待后 就继续下面代码了 。而while判断一次后仍继续判断 符合的话才执行
//if(!flag)
while(!flag)
{
try {
wait();
} catch (InterruptedException e) {
e.printStackTrace();
}
}
System.out.println(Thread.currentThread().getName()+".....消费者........"+this.name);
flag = false;
//this.notify();
//全部唤醒
this.notifyAll();
}
|