我正在努力解决这个问题"增量" 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
之间有什么区别?非常感谢任何澄清。
答案 0 :(得分:3)
您必须编写return ++n
,因为return n++
评估为n
的原始值,而++n
在递增后评估为n
的值。
答案 1 :(得分:1)
尝试以下方法;
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;
}
}
答案 2 :(得分:1)
n++
的当前值后, n
将n
增加1
++n
将n
递增1,然后计算其值
您的方法returnn(int)
应该返回++n
,而不是n++
。