Ternärer Operator ( x = y == 0 ? 0 : 100)

Status
Nicht offen für weitere Antworten.
B

bygones

Gast
Der einzige Operator in Java, der drei Variablen erwartet und ternärer Operator genannt wird, ist der Bedingungsoperator. Seinen Ursprung hat er wohl in der Programmiersprache C.
Er hat z.b. folgende Form:
Code:
int x = 0;
int y = 0;
// ein paar berechnungen mit x und y;
x = y  == 0 ? 0 : 100;
er ist einfach die Kurzform für den folgenden Code
Code:
int x = 0;
int y = 0;
// ein paar berechnungen mit x und y;
if(y == 0) {
  x = 0;
}
else {
  x = 100;
}

die allgemeine Form ist somit:
Code:
x = BOOL_TEST ? TRUE_FALL : FALSE_FALL
d.h. ergibt der BOOL_TEST true so wird x der wert im TRUE_FALL zugewiesen, ansonsten der Wert im FALSE_FALL.

Der ternäre Operator ist reine Geschmackssache, manche nutzen ihn um weniger zu schreiben, manche finden ihn unübersichtlicher (v.a. dann wenn mehrere Abfragen geschachtelt werden)

Dies ist der Bedingungsoperator, der auch Konditionaloperator, ternärer Operator beziehungsweise trinärer Operator genannt wird.
 
Status
Nicht offen für weitere Antworten.

Oben