Maison >Java >javaDidacticiel >Comment gérer des valeurs éventuellement nulles à l'aide de la classe facultative en Java ?
Comment gérer des valeurs éventuellement nulles à l'aide de la classe facultative en Java ?
Introduction :
Dans le processus de programmation, nous rencontrons souvent des situations où nous devons gérer des valeurs éventuellement nulles. Il existe de nombreuses façons de gérer les valeurs nulles, l'une des méthodes les plus courantes consiste à utiliser la classe facultative en Java. La classe Optionnelle est une nouvelle fonctionnalité introduite dans Java 8, conçue pour gérer efficacement les situations de valeurs nulles et fournir une implémentation de code plus sûre et plus élégante. Cet article explique comment utiliser la classe facultative en Java pour gérer des valeurs éventuellement nulles et l'illustre avec des exemples de code.
import java.util.Optional; public class OptionalExample { public static void main(String[] args) { String text = null; Optional<String> optional = Optional.ofNullable(text); if (optional.isPresent()) { String result = optional.get(); System.out.println("Value exists: " + result); } else { System.out.println("Value does not exist"); } String defaultValue = optional.orElse("Default Value"); System.out.println("Value: " + defaultValue); } }Dans l'exemple ci-dessus, nous créons d'abord un texte de chaîne éventuellement nul et passons la méthode Nullable () pour l'encapsuler dans un Objet facultatif. Utilisez ensuite la méthode isPresent() pour déterminer s'il y a une valeur dans l'objet facultatif. S'il y a une valeur, nous obtenons la valeur via la méthode get() et l'imprimons. S'il n'y a aucune valeur dans l'objet facultatif, "La valeur n'existe pas" est imprimé. Enfin, utilisez la méthode orElse() pour définir une valeur par défaut, qui sera renvoyée lorsque l'objet facultatif est vide.
(2) orElseGet(Supplierd203bb1ae585225d4838a2b7e3d0503e supplier) : Si le L'objet facultatif est vide, transmettez le fournisseur La méthode fournie obtient une valeur alternative ;
(3) orElseThrow(Supplier37fb9197a5b298d9c385edb358b96053 mapper) : S'il y a une valeur dans l'objet facultatif, la valeur est traitée via la méthode. fourni par le mappeur et un nouvel objet facultatif est renvoyé ;
(5) flatMap(Function30941fc60a1727b7447e2c0d2c2121b0> ; mapper) : S'il y a une valeur dans l'objet facultatif, la valeur est traitée via les méthodes fournies. par mappeur et un nouvel objet facultatif est renvoyé.
Voici un exemple qui montre comment utiliser la méthode map() pour traiter les valeurs dans un objet facultatif :
import java.util.Optional; public class OptionalExample { public static void main(String[] args) { String text = "Hello World"; Optional<String> optional = Optional.ofNullable(text); Optional<String> transformed = optional.map(s -> s.toUpperCase()); transformed.ifPresent(s -> System.out.println("Transformed Value: " + s)); } }
Dans l'exemple ci-dessus, nous créons d'abord un texte de chaîne éventuellement nul et le passons via la méthode ofNullable() l'encapsule dans un objet facultatif. Utilisez ensuite la méthode map() pour traiter la valeur dans l'objet facultatif, convertissez-la en lettres majuscules et stockez-la dans un nouvel objet facultatif transformé. Enfin, utilisez la méthode ifPresent() pour déterminer s'il existe une valeur dans l'objet transformé et imprimez-la.
Résumé :
Grâce à l'introduction de cet article, nous avons appris comment la classe facultative en Java gère les valeurs nulles possibles. L'utilisation de la classe Optionnel peut réduire efficacement l'apparition d'exceptions de pointeur nul et améliorer la lisibilité et la maintenabilité du code. Dans le processus de programmation actuel, nous devons utiliser pleinement diverses méthodes de la classe Optionnel et gérer les éventuelles valeurs nulles de manière raisonnable pour améliorer la qualité et la stabilité du code.
Références :
2. " : https://www.jianshu.com/p/831b6ff0c284
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!