Postfix和前缀差异,在Java中使用for循环时

时间:2014-10-06 09:11:37

标签: java prefix postfix-operator

我的问题是,当我们在“循环”中使用++时会怎样? (右侧的++)它增加了。在这个例子中,它在右侧但不会增加。

int a = 1, y;
b = a++; //so "b" will be 1
         // if we do ++a then "b" will be 2

3 个答案:

答案 0 :(得分:1)

在for循环和示例中都会增加。 a++ a增加b,但a获得i++之前的值。

在for循环中,您不能将i++的返回值分配给其他变量,因此如果您编写++ifor (int i=0;i<5;i++) { System.out.println(i); } 并不重要

for (int i=0;i<5;++i)
{
    System.out.println(i);
}

{{1}}

表现完全一样。

答案 1 :(得分:0)

在这两种情况下,a的值都会增加。但是,使用b = a++;时,之后的增值值已经分配给b,但b = ++a;增加值之前增加值 其值已分配给b

区别不在于增加与否的价值;它是指分配给变量b的值:a增加前的原始值或增加后的新值。

如果a没有分配给其他变量,则a++++a之间没有区别。

答案 2 :(得分:0)

在++中, a语句在执行语句后递增,即在执行语句时,值不会递增,而是在执行后递增。

in ++ a, 在执行语句期间,a的值递增,即在执行时,我们得到递增的值作为结果。