Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/csharp-4.0/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
为什么在java for循环中没有出现错误?_Java - Fatal编程技术网

为什么在java for循环中没有出现错误?

为什么在java for循环中没有出现错误?,java,Java,在下面的语句中,我们将得到无法访问的statemnt error。我知道什么 这是错误背后的原因 我的问题是为什么我们不会在下面的语句中得到错误 原因是编译器会考虑到B有可能被程序或线程的其他部分从它的前一个值改变为某个值,即使你的程序实际上没有改变B,但是编译器不会在编译时检测到它。 澄清可能只是使B作为最终的,并且看到你会得到同样的错误,因为编译器会注意到B是最终的,并且不能被程序的其他部分改变,所以会认为错误是B的最终值,因此会产生错误。p> 最终布尔值b=false; 对于B Syste

在下面的语句中,我们将得到无法访问的statemnt error。我知道什么 这是错误背后的原因

我的问题是为什么我们不会在下面的语句中得到错误


原因是编译器会考虑到B有可能被程序或线程的其他部分从它的前一个值改变为某个值,即使你的程序实际上没有改变B,但是编译器不会在编译时检测到它。 澄清可能只是使B作为最终的,并且看到你会得到同样的错误,因为编译器会注意到B是最终的,并且不能被程序的其他部分改变,所以会认为错误是B的最终值,因此会产生错误。p> 最终布尔值b=false; 对于B System.out.println无错误//错误:无法访问语句
原因是编译器会考虑到B有可能被程序或线程的其他部分从它的前一个值改变为某个值,即使你的程序实际上没有改变B,但是编译器不会在编译时检测到它。 澄清可能只是使B作为最终的,并且看到你会得到同样的错误,因为编译器会注意到B是最终的,并且不能被程序的其他部分改变,所以会认为错误是B的最终值,因此会产生错误。p> 最终布尔值b=false; 对于B System.out.println无错误//错误:无法访问语句 相关的-
for(;false;)
System.out.println("Unrechable statement");
boolean b = false;
for(;b;)
System.out.println("NO error");