Java while循环布尔评估

0 java boolean-expression while-loop

我不确定我是否理解这个循环

boolean b = false;
while(!b) {
System.out.println(b);
b = !b;
}
Run Code Online (Sandbox Code Playgroud)

它返回false,循环执行一次

但while(!b)确定了b= true吗?喜欢!b = !false和b打印出来?

Men*_*ena 9

该while (!b)条件不设置b到true.

该b = !b声明一样.

这就是你的循环只执行一次的原因.


伪代码翻译:

  • 同时not b(即,虽然b是false)
  • 打印b(所以打印false)
  • 分配b给not b(也就是说,b分配b给true)
  • 循环的下一次迭代b是true,因此not b条件失败并且循环终止