我对Java传递值有疑问。我知道在方法外部声明的变量不会更改其值,因为当我在变量上调用I方法时,该方法将仅使用分配给它们的值。但是在这种情况下,我不明白为什么int结果没有得到2的值。因为增量()将获得x的值,所以1并将其增加1并将该值存储在结果变量中。
public class Increment {
public static void main(String[] args) {
int x = 1;
System.out.println("Before the call, x is " + x);
int result = increment(x);
System.out.println("After the call, x is " + result);
}
public static int increment(int n) {
return n++;
}
}
答案 0 :(得分:1)
后递增运算符n++
将n
的值加1,但返回前一个值。因此,increment(x)
返回x
,而不返回x+1
。