Q:HeadFirstJava for循环练习(混合消息CH5)
我一直在努力学习Java Headfirst手册中的一个练习(参考CH5:p121)。它是另一个循环中的一个循环,用于从实例变量中添加/删除一些值 输入: x=x+3 输出: x=54 y=6Q:HeadFirstJava for循环练习(混合消息CH5),java,for-loop,output,Java,For Loop,Output,我一直在努力学习Java Headfirst手册中的一个练习(参考CH5:p121)。它是另一个循环中的一个循环,用于从实例变量中添加/删除一些值 输入: x=x+3 输出: x=54 y=6 public class MixFor5 { public static void main(String[] args) { int x = 0; int y = 30; for (int outer = 0; outer < 3; outer++) { for (int in
public class MixFor5 {
public static void main(String[] args) {
int x = 0;
int y = 30;
for (int outer = 0; outer < 3; outer++) {
for (int inner = 4; inner > 1; inner--) {
x = x + 3;
y = y - 2;
if (x == 6) {
break;
}
x = x + 3;
}
y = y - 2;
}
System.out.println(x + " " + y);
}
}
公共类混合5{
公共静态void main(字符串[]args){
int x=0;
int y=30;
对于(int-outer=0;outer<3;outer++){
对于(int-inner=4;inner>1;inner--){
x=x+3;
y=y-2;
如果(x==6){
打破
}
x=x+3;
}
y=y-2;
}
System.out.println(x+“”+y);
}
}
我的结果是,当我自己用记事本做这件事时,x=42 y=8,因为这两个循环条件都满足了。我做错了什么?我在思考过程中哪里出错了
这些是我的笔记->
我没有尝试过先调试,因为我想先自己解决这个问题,这样以后就不会犯同样的错误
提前感谢,
如果(x==6)将永远不会实现。原因是,
当internal=4
x=x+3
执行两次,即表示x=6
然后,internal=3
现在,首先x=x+3
(在if(x==3)
条件之前)将给出输出x=9
。所以x>6
它不会中断循环
你在笔记中错了这一步