Q:HeadFirstJava for循环练习(混合消息CH5)

Q: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

我一直在努力学习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 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
它不会中断循环

你在笔记中错了这一步