簡體   English   中英

懷疑for循環

[英]doubt in for loop

我有以下代碼

public static void main(String[] args) {
  int x=0;
  int y=0;
  for(int z=0;z<5;z++)
    if((++x>2)||(++y>2))
      x++;

  System.out.println(x+" "+y);

}

為此,輸出為8 2

public static void main(String[] args) {
  // TODO Auto-generated method stub
  int x=0;
  int y=0;
  for(int z=0;z<5;z++){
    if((++x>2)||(++y>2))
      x++;

    System.out.println(x+" "+y);
  } 
}

我可以理解每次循環完成之前打印的第二個代碼。 對於第一個代碼,當x變為3時,if循環的值將增加到4,然后發生什么情況,它將進入sop或for循環以完成循環?

我編輯了您的條目,因為您錯過了這樣的代碼...閱讀問題之后,如果您看一下它的縮進方式,我認為您應該自己看看答案。

面向未來: 每次都使用花括號,而不僅僅是塊中有多行,否則只會感到困惑。

for循環由z的值控制,x的值與循環停止的時間無關。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM