Java 中赋值表达式的计算结果是什么?

What does an assignment expression evaluate to in Java?

我在Java

中遇到了一个语句
while ((line = reader.readLine()) != null) {
    out.append(line);
}

如何对return中的值进行赋值操作Java?

我们正在检查的语句是 line = reader.readLine(),我们将其与 null 进行比较。

由于 readLine 将 return 一个字符串,我们如何检查 null

(line = reader.readLine()) != null

表示

  1. 调用方法 readLine()。
  2. 结果赋值给变量line,
  3. line 的新值将证明 null

也许一次有很多操作...

赋值表达式计算为其赋值。

(test = read.readLine())

>>

(test = <<return value>>)

>>

<<return value>>

Java 中的赋值运算符求值为指定的值(就像它在 中所做的那样)。所以这里,readLine()会被执行,它的return值存入line。然后根据 null 检查存储的值,如果它是 null 则循环将终止。

reader.readLine() 为您朗读并 returns 一行。在这里,您将返回的任何内容分配给 line 并检查 line 变量是否为 null。

The Java® Language Specification 15.26. Assignment Operators

At run time, the result of the assignment expression is the value of the variable after the assignment has occurred.