Wie funktioniert eine Java-if-Anweisung, wenn sie eine Zuweisung und eine Gleichheitsprüfung OR-d zusammen hat? [Duplikat]

8

Warum wird diese if-Anweisung mit einer Zuweisung und einer Gleichheitsprüfung als falsch ausgewertet?

%Vor%

Warum wird No gedruckt?

    
dhaval joshi 11.10.2016, 07:16
quelle

4 Antworten

14

Wegen Vorrang für den Betreiber . Es entspricht dem:

%Vor%

Der Teil in Klammern ergibt false .

    
Axel 11.10.2016 07:22
quelle
-1

Sie ordnen var in der if-Anweisung einen Wert zu, verwenden ihn jedoch nicht. Wenn Sie if-Anweisungen zuweisen und verwenden möchten, können Sie Folgendes tun:

%Vor%     
D. Pineda 11.10.2016 07:25
quelle
-1

Sie haben die folgenden Operatoren in Ihrer if -Anweisung, die folgendermaßen priorisiert sind: Gleichheit & gt; logisches ODER & gt; Zuweisung

Das if reduziert sich dann wie folgt:

%Vor%

Daher Drucken Nein .

    
Spotted 11.10.2016 07:34
quelle
-2

Das Ergebnis dieses Codes wird "nein" ausgeben, da Sie test1 als falsch zuweisen        test1 = falsch Die if-Anweisung wird dann zu false ausgewertet, weil Sie dann test1 == false auswerten und else block führt

aus

Dies könnte das sein wonach Sie suchen:

%Vor%

Schauen Sie in den Kurzschluss oder den Operator, damit Sie das Problem besser verstehen können

    
Reign 11.10.2016 07:27
quelle

Tags und Links