我的代码没有返回10!a变量似乎没有更新!为什么?
a
public static void main(String[] args) { Integer a = 5; sum(a); System.out.println(a); } static Integer sum(Integer b) { b=b+5; return b; }
zf2sa74q1#
您没有将值sum(a)分配给a。函数sum不编辑传入参数的引用的值。您需要更新a的值,方法是这样做a = sum(a)。
sum(a)
a = sum(a)
lf5gs5x22#
您应该通过引用传递它。
public static void main(String[] args) { Integer a = 5; sum(a); System.out.println(a); } static Integer sum(Integer &a) { a=a+5; return a; }
现在它会工作。
2条答案
按热度按时间zf2sa74q1#
您没有将值
sum(a)
分配给a
。函数sum不编辑传入参数的引用的值。您需要更新a
的值,方法是这样做a = sum(a)
。lf5gs5x22#
您应该通过引用传递它。
现在它会工作。