我知道在while循环中,do循环首先迭代,然后检查条件。但为什么这个代码打印3,不应该进入无限循环?但是,如果我用true替换b =!b。它确实进入无限循环。这是为什么? (我是一个新手,所以我可能失去了一些东西哑)Java Do while循环
public static void main(String[] args) {
boolean b = false;
int i = 1;
do{
i++ ;
} while (b = !b); //shouldn't this loops forever, if i put true, it does loop for ever why?
System.out.println(i); //prints 3
}
while(b ==!b)将跳出循环。而(b!=!b)将导致无限循环。 – codedabbler
@ddalton这就是我没有测试时发生的事情!固定。 – rgettman
哦好的!所以在第二次迭代中,!b变回false ......好酷,这就是我错过了,!(不) –