Maison >Java >javaDidacticiel >Gérez davantage de branches conditionnelles avec les nouvelles expressions Switch dans Java 13

Gérez davantage de branches conditionnelles avec les nouvelles expressions Switch dans Java 13

王林
王林original
2023-07-31 16:09:211234parcourir

Gérez davantage de branches conditionnelles avec les nouvelles expressions Switch dans Java 13

Avec la sortie de Java 13, nous accueillons de nombreuses nouvelles fonctionnalités et améliorations. L'une des nouvelles fonctionnalités intéressantes concerne les expressions Switch améliorées pour mieux gérer les branches conditionnelles. Dans cet article, nous présenterons comment utiliser la nouvelle expression Switch dans Java 13 pour gérer davantage de branches conditionnelles et donnerons quelques exemples de code.

Dans le passé, en Java, nous utilisions généralement l'instruction Switch pour gérer les branches conditionnelles. Cependant, l'instruction Switch présente certaines limites, par exemple qu'elle ne peut correspondre qu'à des expressions constantes et qu'une instruction break ou return doit être utilisée entre chaque instruction case pour éviter d'exécuter l'instruction case suivante. Ces limitations rendent l'instruction Switch quelque peu lourde lorsqu'il s'agit d'une logique conditionnelle complexe.

La nouvelle expression Switch introduite dans Java 13 élimine ces limitations et fournit une syntaxe plus flexible et concise. Voyons comment utiliser la nouvelle expression Switch pour gérer davantage de branches conditionnelles.

Tout d'abord, nous pouvons utiliser plusieurs expressions comme conditions de correspondance dans les expressions Switch. Auparavant, nous ne pouvions utiliser une expression que comme condition dans une instruction Switch. Désormais, nous pouvons utiliser plusieurs expressions séparées par des virgules.

L'exemple de code est le suivant :

String fruit = "apple";
int count = switch (fruit) {
    case "apple", "orange" -> 10;
    case "banana" -> 20;
    default -> throw new IllegalArgumentException("Invalid fruit: " + fruit);
};
System.out.println("Count: " + count);

Dans l'exemple ci-dessus, nous avons utilisé deux conditions dans l'expression Switch, à savoir "apple" et "orange". Si la valeur du fruit est « pomme » ou « orange », alors la valeur du compte sera 10. Si la valeur du fruit est « banane », alors la valeur du compte sera de 20. Si la valeur du fruit ne remplit aucune condition, une IllegalArgumentException est levée.

Une autre nouvelle fonctionnalité utile est que les expressions Switch ne nécessitent plus une instruction break ou return explicite pour terminer chaque branche case. Désormais, nous pouvons renvoyer directement une valeur dans chaque branche case.

L'exemple de code est le suivant :

String fruit = "apple";
int count = switch (fruit) {
    case "apple" -> {
        System.out.println("Apple");
        yield 10;
    }
    case "orange" -> {
        System.out.println("Orange");
        yield 20;
    }
    default -> {
        throw new IllegalArgumentException("Invalid fruit: " + fruit);
    }
};
System.out.println("Count: " + count);

Dans l'exemple ci-dessus, nous pouvons utiliser des accolades dans chaque branche case pour exécuter plusieurs instructions et utiliser directement le mot-clé rendement pour renvoyer une valeur.

De plus, Java 13 introduit également une nouvelle syntaxe de flèche ("->") et un mot-clé rendement, rendant les expressions Switch plus concises et lisibles.

Pour résumer, la nouvelle expression Switch dans Java 13 améliore la gestion des branches conditionnelles. Nous pouvons utiliser plusieurs expressions comme conditions de correspondance, et nous n'avons plus besoin d'utiliser explicitement des instructions break ou return pour terminer chaque branche case, ce qui rend le code plus concis et lisible. J'espère que cet article vous aidera à mieux comprendre et appliquer les nouvelles expressions Switch dans Java 13.

Référence :

  • https://openjdk.java.net/jeps/354

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn