我不明白为什么在我编写的测试类中第 3 行打印 1。 我认为它会打印 2 而不是 1,因为我认为第 2 行已将 x 的值更改为 2。
谁能给我解释一下吗?这与 java 按值传递有关还是有其他解释?
public class Test{
public static void main(String[] args) {
int x = 1; // line 1
System.out.println(x+1); //line 2 prints 2
System.out.println(x); //line 3 but why does this line prints 1?
}
}
输出:
2
1
最佳答案
解释很简单,x + 1
不会改变 x
的值,而是返回一个完全独立的 int
,其值比x
大1。
关于java - + 运算符 - Java 按值传递,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33202757/