2016-07-02 21 views
11

traf ich eine Erklärung in JavaRückgabewert der Zuweisungsoperation in Java

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

Wie Zuweisungsoperationen Wert in Java zurückgeben? Als die Aussage, die wir überprüfen, ist line=reader.readLine() und vergleicht es mit null. Weil readLine String zurückgibt, wie genau suchen wir nach null?

Antwort

20

Der Zuweisungsoperator in Java gibt den zugeordneten Wert (wie es der Fall ist, beispielsweise in ). Hier wird also readLine() ausgeführt und der Rückgabewert in line gespeichert. Dieser Wert wird dann gegen null überprüft, und wenn es null ist, wird die Schleife beendet.

4

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

bedeutet

  1. Verfahren readline() aufgerufen wird.
  2. das Ergebnis wird auf variable Linie zugeordnet,
  3. der neue Wert von Linie wird Beweis gegen null

vielleicht auf einmal viele Operationen ...

4

Zuordnung Ausdrücke werden zu ihrem Zuweisungswert ausgewertet.

(test = read.readLine()) 

>>

(test = <<return value>>) 

>>

<<return value>> 
+0

meine Frage ist, tun Ausdrücke geben auch etwas wie zu dir nach dieser Zeit (line = null), wird das bedeutet, es wird wieder Null zurückgeben? – sunder

+0

@sunder Ich habe meine Antwort bearbeitet, um Ihre Frage zur Bewertung von Zuweisungsausdrücken zu beantworten. –

0

reader.readLine() liest und gibt eine Zeile für Sie zurück. Hier haben Sie zugewiesen, was von dieser Zeile zurückgegeben wurde, und prüfen, ob die Zeilenvariable null ist oder nicht.