Java自动增量

时间:2016-11-12 07:17:49

标签: java

为什么输出以下代码5而不是4?

public class Test
{
    public static void run(int x)
    {
        while(x < 5)
        {
            System.out.println(x);
            x++;
        }

        System.out.println(x);
    }

    public static void main(String[] args)
    {
              run(1);
    }
}

2 个答案:

答案 0 :(得分:-1)

只需了解正在发生的事情。

你的循环将保持循环“而x小于5”,所以在你的上一个循环x将等于4.然后,在你循环中,你执行x++,所以将{1}添加到xx不再小于5(它是5),所以你的循环完成并打印出值。

如果您只想循环直到x等于4,只需将循环条件更改为:while(x < 4)添加if语句以检查值在增加它之前x

if(x == 4){
break;  //Exit the loop
}

答案 1 :(得分:-1)

想一想while (x < 5) { ... }实际上说的是什么。

它说:

  

只要x < 5true,就继续循环播放。

提示:当x < 5为4时,x为真。在表达式x < 5变为假之前,循环不会结束。 x评估为false的x < 5的第一个值是什么?