日期:2014-05-20  浏览次数:20628 次

for和while循环
[code=Java][/code]public class ForTest {
public static void main(String[]args){
int a=2;
for(;;){
System.out.println(a);
}
System.out.println("哈哈");
}
}
[code=Java][/code]public class WhileTest {
public static void main(String[]args){
int a=1;
while(a>0){
System.out.println(a);
}
System.out.println("我爱黑丝");
}
}
都是死循环 为什么只有for循环会编译错误

------解决方案--------------------
把代码放在[code=Java][/code]之间

我这杂么不报错捏?
------解决方案--------------------
探讨
while循环中A的值是存在栈内存中的,程序后面的代码可能将值改变,所以说循环条件是有可能变化的但for循环没有条件没有结果的知识一位死循环当然会报错

------解决方案--------------------
需要有程序结束的条件啊?没有结束的条件,for(;;)必须要有结束的条件
------解决方案--------------------
for(;;){
System.out.println(a);
}
System.out.println("哈哈");
}

for循环永远不会结束
所以下面的语句永远不会执行。
你可以在for循环里面加个break看看效果

while(a>0){
}
可能会跳出循环,因为a的值可以改变,至少编译器是这么认为的。

------解决方案--------------------
探讨
for(;;){
System.out.println(a);
}
System.out.println("哈哈");
}

for循环永远不会结束
所以下面的语句永远不会执行。
你可以在for循环里面加个break看看效果

while(a>0){
}
可能会跳出循环,因为a的值可以改变,至少编译器是这么认为的。