int a = 7, b = 21; System.out.println( "Das Minimum ist: " + (a < b ? a : b ) );
Hier ist ein etwas interessanteres Beispiel:
Ein Programm berechnet die durchschnittliche Benotung der Studenten einer Klasse. Studenten mit einer durchschnittlichen Benotung unter 60 bekommen einen Bonus von 5 Punkten. Alle anderen bekommen einen Bonus von 3 Punkten.
Hier ist das Programmfragment, welches das tut:
... der Durchschnitt wird hier berechnet ... durchschnitt += (durchschnitt < 60 ) ? 5 : 3 ;
Der Unterausdruck, der den konditionalen Ausdruck ausmacht, kann so kompliziert sein, wie nötig. Jetzt einmal angenommen, die studentische Benotung unter 60 soll um 10 Prozent und die der anderen um 5 Prozent angehoben werden. Hier ist das Programmfragment, welches das tut:
... der Durchschnitt wird hier berechnet ... durchschnitt += (durchschnitt < 60 ) ? durchschnitt*0.10 : durchschnitt*0.05;
Das ist wahrscheinlich kompliziert genug für den konditionalen Operator.
Wenn Ihr noch kompliziertere Ausdrücke braucht, verwendet Ihr dafür besser
eine if-else
-Anweisung.
Schreibt eine Zuweisungsanweisung, die einer Ganzzahl eine eins hinzufügt, wenn sie ungerade ist, aber nichts hinzufügt, wenn sie gerade ist.