java - + 运算符 - Java 按值传递

标签 java operator-keyword

我不明白为什么在我编写的测试类中第 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/

相关文章:

java - java中的自增和自减运算符

java - 使用JAXB解析GPX

java - Spring RequestMapping 不工作

JavaFX 阶段*有时*在 Win10 上显示为空白

java - 运算符 * 不能应用于 double

c - 什么是 C 中的 '#' 运算符?

java - 尝试创建用户定义对象的列表,获取对象列表

java - 将文件写入 Hdfs 时出现 IOException

c - -> 结构体中的运算符

c++ - 运算符重载 C++ +=