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

Aus Byte-Welt Wiki
Zur Navigation springenZur Suche springen
K
K
 
Zeile 1: Zeile 1:
 
Der einzige [[Operator]] in Java, der drei [[Variable|Variablen]] erwartet und '''ternärer Operator''' genannt wird, ist der Bedingungsoperator. Für den einen oder anderen könnte dieser Operator auch unter der Bezeichnung '''trinärer''' Operator bekannt sein. Seinen Ursprung hat er in der [[Programmiersprache]] C.<br>
 
Der einzige [[Operator]] in Java, der drei [[Variable|Variablen]] erwartet und '''ternärer Operator''' genannt wird, ist der Bedingungsoperator. Für den einen oder anderen könnte dieser Operator auch unter der Bezeichnung '''trinärer''' Operator bekannt sein. Seinen Ursprung hat er in der [[Programmiersprache]] C.<br>
 
Er hat z.b. folgende Form:
 
Er hat z.b. folgende Form:
<code=java>
+
<syntaxhighlight lang="java">
 
int x = 0;
 
int x = 0;
 
int y = 0;
 
int y = 0;
 
// ein paar berechnungen mit x und y;
 
// ein paar berechnungen mit x und y;
 
x = y  == 0 ? 0 : 100;
 
x = y  == 0 ? 0 : 100;
</code=java>
+
</syntaxhighlight>
 
Er ist einfach die Kurzform für den folgenden Code:
 
Er ist einfach die Kurzform für den folgenden Code:
<code=java>
+
<syntaxhighlight lang="java">
 
int x = 0;
 
int x = 0;
 
int y = 0;
 
int y = 0;
Zeile 17: Zeile 17:
 
else {
 
else {
 
   x = 100;
 
   x = 100;
}</code=java>
+
}</syntaxhighlight>
  
 
Die allgemeine Form ist somit:
 
Die allgemeine Form ist somit:
<code=java>x = BOOL_TEST ? TRUE_FALL : FALSE_FALL</code=java>
+
<syntaxhighlight lang="java">x = BOOL_TEST ? TRUE_FALL : FALSE_FALL</syntaxhighlight>
 
D.h. ergibt der BOOL_TEST true so wird x der wert im TRUE_FALL zugewiesen, ansonsten der Wert im FALSE_FALL.
 
D.h. ergibt der BOOL_TEST true so wird x der wert im TRUE_FALL zugewiesen, ansonsten der Wert im FALSE_FALL.
  
Zeile 29: Zeile 29:
 
--[[Benutzer:bygones | bygones]] 10.08.2013
 
--[[Benutzer:bygones | bygones]] 10.08.2013
  
[[Kategorie:Java]]
 
 
[[Kategorie:Java Grundlagen]]
 
[[Kategorie:Java Grundlagen]]
 
[[Kategorie:C]]
 
[[Kategorie:C]]
 
[[Kategorie:Cpp]]
 
[[Kategorie:Cpp]]
 
[[Kategorie:Programmierung Grundlagen]]
 
[[Kategorie:Programmierung Grundlagen]]

Aktuelle Version vom 22. Dezember 2018, 10:27 Uhr

Der einzige Operator in Java, der drei Variablen erwartet und ternärer Operator genannt wird, ist der Bedingungsoperator. Für den einen oder anderen könnte dieser Operator auch unter der Bezeichnung trinärer Operator bekannt sein. Seinen Ursprung hat er in der Programmiersprache C.
Er hat z.b. folgende Form:

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:

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:

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.

-- bygones 10.08.2013