Nous sommes dans le cas où nous avons une donnée corrompue x dans la liste et où la présence de cette donnée corrompue x empêche une opération sur les données Y du même type que X.. Ce n'est pas normal, et nous devons protéger le code de sorte que la présence des données corrompues x ne bloque pas l'utilisation d'autres données valides.
i Utilisé en option avec un filtre de commande, pour filtrer si le nom est null nous Skip. p> est un moyen d'éviter le test de (e-> e.getname! = null)? P> P>
3 Réponses :
Il suffit d'inverser la condition, si vous êtes sûr que la variable "nom" est Null Safe. Par exemple, au lieu de
name.equals(e.getName())
Ce problème, le nom que je ne sais pas si c'est null sûr
@RODIK Notez la logique: si nom code> est null code>, puis abstractpersonnel code> sera en option. / code>, ce qui implique que Personnel Code> aura la valeur de null code>. Donc, après cette ligne nom de chaîne = personne.getname (); code>, vous pouvez faire une chèque null: si (nom == null) retourner; code> maintenant, vous êtes Assurez-vous que nom code> est pas null b>. Donc, vous pouvez inverser la condition en toute sécurité selon la recommandation de @HARSHAL Khahahane
Inverser la condition: nom.equals (e.getname ()) code>
Comment cette réponse est-elle un moyen d'éviter le test de (e-> e.getname! = Null)? I>?
Vous pouvez vérifier avec la
Assurez-vous que ce n'est pas
null code> et vous pouvez l'éviter. Si cela peut êtrenull code>, vous devez vérifier si vous faites face à une NPE.