【发布时间】:2014-05-07 20:14:19
【问题描述】:
我试图在 Java 代码中解决这个“增量”问题,但我找不到解决方案:
public class Return {
public static void main(String[] args) {
int n = returnn(3);
System.out.println(n);
}
public static int returnn(int n) {
return n++;
}
}
我应该返回 4,但它却返回 3。这是为什么?另外,当我输入:
return n+=1它有效。这让我很困惑。另外,n++ 和++n 有什么区别?非常感谢任何澄清。
【问题讨论】:
-
增量运算符请参见the Java tutorial的底部。
-
++n 会起作用,但要注意:如果是 main 中的值的副本,则函数中的 n 值。所以 return (n+1) 将与函数 returnn 中的位置参数 n 具有相同的效果,一旦函数返回
-
只需
return n+1;不需要增加局部变量。 -
您正在使用后增量。 3 是正确的。