web-dev-qa-db-ja.com

Javaの割り当て操作の戻り値

Javaのステートメントに遭遇しました

_while ((line = reader.readLine()) != null) {
    out.append(line);
}
_

割り当て操作はどのようにJavaで値を返しますか?

チェックしているステートメントはline = reader.readLine()で、nullと比較します。

readLineは文字列を返すので、nullをどのくらい正確にチェックしていますか?

29
sunder

Javaの代入演算子は、割り当てられた値を返します(たとえば、 c のように)。したがって、ここではreadLine()が実行されます。そして、その戻り値はlineに格納されます。その値はnullに対してチェックされ、nullである場合、ループは終了します。

38
Mureinik

割り当て式は、割り当て値に対して評価されます。

(test = read.readLine())

>>

(test = <<return value>>)

>>

<<return value>>
7
Drew Beres

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

手段

  1. メソッドreadLine()が呼び出されます。
  2. 結果は変数lineに割り当てられます。
  3. lineの新しい値はnullに対する証明となります

多分一度に多くの操作...

reader.readLine()は、行を読み取って返します。ここでは、そこから返されるものをすべて行に割り当て、行変数がnullかどうかを確認します。

0
nPcomp