Menu
Coddy logo textTech

Opérateur ternaire

Fait partie de la section Fondamentaux du Journey Java de Coddy — leçon 30 sur 73.

L'opérateur ternaire est une instruction if-else simple sur une ligne. Il a la syntaxe suivante :

variable = (condition) ? value_if_true : value_if_false;

L'opérateur ternaire évalue la condition. Si c'est true, il assigne value_if_true à la variable ; sinon, il assigne value_if_false.

Par exemple:

int age = 20;
String message = (age >= 18) ? "Adult" : "Minor";

Dans cet exemple, puisque age est supérieur ou égal à 18, message se verra assigner la valeur "Adult". Si age était inférieur à 18, message se verrait assigner "Minor".

Vous pouvez imbriquer des opérateurs ternaires pour gérer plusieurs conditions :

int score = 75;
String grade = (score >= 90) ? "A" : (score >= 80) ? "B" : (score >= 70) ? "C" : "F";

Ceci vérifie plusieurs conditions dans l'ordre. Si score >= 90, grade est "A" ; sinon si score >= 80, grade est "B" ; sinon si score >= 70, grade est "C" ; sinon "F".

Remarque : Les opérateurs ternaires imbriqués peuvent être difficiles à lire. Pour des conditions complexes, utilisez des instructions if-else à la place.

challenge icon

Défi

Débutant

Créez un programme qui vérifie si un nombre est positif, négatif ou zéro en utilisant l'opérateur ternaire. Le programme devrait :

  1. Prendre une entrée entière de l'utilisateur.
  2. Utiliser l'opérateur ternaire pour déterminer si le nombre est positif, négatif ou zéro.
  3. Afficher le résultat au format : "The number is [positive/negative/zero]".

Aide-mémoire

L'opérateur ternaire est une instruction if-else sur une ligne avec la syntaxe :

variable = (condition) ? value_if_true : value_if_false;

Il évalue la condition et assigne value_if_true si la condition est true, sinon assigne value_if_false.

Exemple :

int age = 20;
String message = (age >= 18) ? "Adult" : "Minor";

Opérateurs ternaires imbriqués pour gérer plusieurs conditions :

int score = 75;
String grade = (score >= 90) ? "A" : (score >= 80) ? "B" : (score >= 70) ? "C" : "F";

Cela vérifie plusieurs conditions dans l'ordre. Si score >= 90, grade est "A" ; sinon si score >= 80, grade est "B" ; sinon si score >= 70, grade est "C" ; sinon "F".

Note : Les opérateurs ternaires imbriqués peuvent être difficiles à lire. Pour des conditions complexes, utilisez des instructions if-else à la place.

Essayez vous-même

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int number = scanner.nextInt();
        String result = "";
        
        // Écrivez votre code ci-dessous
        
        
        System.out.println("The number is " + result);
        scanner.close();
    }
}
quiz iconTestez-vous

Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.

Toutes les leçons de Fondamentaux