Ternärer Operator ( x = y == 0 ? 0 : 100): Unterschied zwischen den Versionen

Aus Byte-Welt Wiki
Zur Navigation springenZur Suche springen
Zeile 30: Zeile 30:
  
 
[[Kategorie:Java]]
 
[[Kategorie:Java]]
 +
[[Kategorie:C]]
 +
[[Kategorie:Cpp]]
 +
[[Kategorie:Programmierung Grundlagen]]

Version vom 10. August 2013, 16:02 Uhr

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

 x = 0;

} else {

 x = 100;

}</code=java>

Die allgemeine Form ist somit: <code=java>x = BOOL_TEST ? TRUE_FALL : FALSE_FALL</code=java> 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.

-- bygones 10.08.2013