Opérateur ternaire Java (avec exemple)

Dans ce tutoriel, vous découvrirez l'opérateur ternaire et son utilisation en Java à l'aide d'exemples.

En Java, un opérateur ternaire peut être utilisé pour remplacer l'instruction if… else dans certaines situations. Avant d'en apprendre davantage sur l'opérateur ternaire, assurez-vous de visiter Java if… else instruction.

Opérateur ternaire en Java

Un opérateur ternaire évalue la condition de test et exécute un bloc de code en fonction du résultat de la condition.

Sa syntaxe est:

 condition ? expression1 : expression2;

Ici, la condition est évaluée et

  • si la condition est true, expression1 est exécutée.
  • Et, si la condition est false, expression2 est exécutée.

L'opérateur ternaire prend 3 opérandes (condition, expression1 et expression2). D'où le nom d' opérateur ternaire .

Exemple: opérateur ternaire Java

 import java.util.Scanner; class Main ( public static void main(String() args) ( // take input from users Scanner input = new Scanner(System.in); System.out.println("Enter your marks: "); double marks = input.nextDouble(); // ternary operator checks if // marks is greater than 40 String result = (marks> 40) ? "pass" : "fail"; System.out.println("You " + result + " the exam."); input.close(); ) )

Sortie 1

 Entrez vos notes: 75 Vous réussissez l'examen.

Supposons que l'utilisateur entre 75 . Ensuite, la condition est marks> 40évaluée à true. Par conséquent, la première passe d'expression est affectée au résultat.

Sortie 2

 Entrez vos notes: 24 Vous échouez à l'examen.

Maintenant, supposons que l'utilisateur entre 24 . Ensuite, la condition est marks> 40évaluée à false. Par conséquent, la deuxième expression échouée est affectée au résultat.

Quand utiliser l'opérateur ternaire?

En Java, l'opérateur ternaire peut être utilisé pour remplacer certains types d' if… elseinstructions. Par exemple,

Vous pouvez remplacer ce code

 class Main ( public static void main(String() args) ( // create a variable int number = 24; if(number> 0) ( System.out.println("Positive Number"); ) else ( System.out.println("Negative Number"); ) ) )

avec

 class Main ( public static void main(String() args) ( // create a variable int number = 24; String result = (number> 0) ? "Positive Number" : "Negative Number"; System.out.println(result); ) )

Production

 Nombre positif

Ici, les deux programmes donnent le même résultat. Cependant, l'utilisation de l'opérateur ternaire rend notre code plus lisible et plus propre.

Remarque : vous ne devez utiliser l'opérateur ternaire que si l'instruction résultante est courte.

Opérateurs ternaires imbriqués

Il est également possible d'utiliser un opérateur ternaire à l'intérieur d'un autre opérateur ternaire. Il est appelé l'opérateur ternaire imbriqué en Java.

Voici un programme pour trouver le plus grand des 3 nombres à l'aide de l'opérateur ternaire imbriqué.

 class Main ( public static void main(String() args) ( // create a variable int n1 = 2, n2 = 9, n3 = -11; // nested ternary operator // to find the largest number int largest = (n1>= n2) ? ((n1>= n3) ? n1 : n3) : ((n2>= n3) ? n2 : n3); System.out.println("Largest Number: " + largest); ) )

Production

 Plus grand nombre: 9

Dans l'exemple ci-dessus, notez l'utilisation de l'opérateur ternaire,

 (n1>= n2) ? ((n1>=n3) ? n1 : n3) : ((n2>= n3) ? n2 : n3);

Ici,

  • (n1> = n2) - première condition de test qui vérifie si n1 est supérieur à n2
  • (n1> = n3) - deuxième condition de test qui est exécutée si la première condition esttrue
  • (n2> = n3) - troisième condition de test qui est exécutée si la première condition estfalse

Remarque : il n'est pas recommandé d'utiliser des opérateurs ternaires imbriqués. C'est parce que cela rend notre code plus complexe.

Articles intéressants...