comment vérifier si une chaîne est null java


Réponse 1:

4 façons de vérifier si String est nul ou vide en Java: -

Voici mes quatre solutions à ce problème courant. Chaque solution a ses avantages et ses inconvénients et un cas d'utilisation spécial, par exemple la première solution ne peut être utilisée qu'à partir de JDK7 sur les wards, la deuxième solution est le moyen le plus rapide de vérifier que la chaîne est vide et la troisième solution doit être utilisée si votre chaîne contient des espaces. La quatrième solution est avec Apache Commons Lang, un simple appel fait tout.

Solution1: - Utilisation de la méthode isEmpty (): -

  • C'est le moyen le plus lisible de vérifier à la fois si la chaîne est nulle ou vide. vous pouvez voir le code ci-dessous,
  • if (chaîne! = null &&! string.isEmpty ()) {

    System.out.println («La chaîne n'est ni nulle ni vide»);

    }

    Vous devez vous rappeler certaines choses à propos de ces solutions

    • le même ordre de vérification doit être conservé car isEmpty () est une méthode non statique si vous l'avez appelée sur une référence nulle, alors une exception de pointeur nul (NPE) sera levée.
    • La deuxième chose que vous devez garder à l'esprit est que la méthode isEmpty () doit être utilisée à partir de JDK7, comme je l'ai mentionné précédemment.

    2ème solution - Utilisation de la fonction length (): -

    • C'est la solution universelle et fonctionne dans toutes les versions de Java, du JDK 1.0 à Java8. Je recommande vivement cette méthode en raison de l'avantage de portabilité qu'elle offre. C'est également le moyen le plus rapide de vérifier si String est vide ou non en Java.
    • if (chaîne! = null && string.length ()> 0) {

      System.out.println («La chaîne n'est ni nulle ni vide»);

      } - Une chose qui est très importante ici est que si String ne contient que des espaces, cette solution ne le considérera pas comme String vide. Le contrôle de vide échouera car string.length () renverra une valeur non nulle. Si vous considérez que la chaîne avec uniquement des espaces blancs est vide, utilisez la méthode trim () comme indiqué dans le troisième exemple.

      3ème solution - Utilisation de la méthode trim (): -

      • C'est la troisième façon de vérifier si String est vide ou non. Cette solution appelle d'abord la méthode trim () sur l'objet String pour supprimer les espaces de début et de fin.
      • if (chaîne! = null && string.trim.length ()> 0) {

        System.out.println («La chaîne n'est ni nulle ni vide»);

        } - Vous pouvez utiliser cette solution si votre programme ne considère pas une chaîne avec seulement un espace blanc comme non vide. Si vous chargez des données de la base de données ou des données stockées dans la base de données, il est préférable de les couper () avant de les utiliser pour éviter les problèmes embêtants dus aux espaces.

        4ème solution - Utilisation de la méthode isBlank () d'Apache Commons Lang

        • La méthode statique StringUtils.isBlank (String) effectue trois vérifications en une seule méthode. vérifiez une chaîne pour vous assurer qu'elle n'est ni nulle, ni vide, ni d'espace uniquement. Dans votre projet, si vous utilisez Apache commons Lang jar, vous pouvez certainement utiliser cette méthode.
        • import org.apache.commons.lang.StringUtils;

          public boolean isNullOrEmpty (String string) {

          return StringUtils.isBlank (chaîne);

          }


Réponse 2:

La bonne façon de vérifier la valeur nulle est

if (maString! = null &&! maString.isEmpty ()) { faire quelque chose();}

Si myString est null, l'appel de myString.equals (null) ou myString.equals ("") échouera avec une exception NullPointerException. Vous ne pouvez appeler aucune méthode d'instance sur une variable nulle.

Vous devez donc d'abord vérifier la valeur null comme ci-dessus.


Réponse 3:

Le moyen le plus simple de vérifier que String est nul en Java

Chaîne str = null; if (str! = null &&! str.isEmpty ()) { System.out.println ("La chaîne n'est pas nulle"); }autre{ System.out.println ("La chaîne est nulle"); }

à partir de maintenant, j'ai initialisé str avec null, donc il passe à la condition else car il est nul. une fois que vous changez la valeur de la variable str en autre que null, elle entre à l'intérieur si condition

Heureux d'aider


Réponse 4:

Si vous attribuez la valeur de str = null, str.isEmpty () vous donnera NullPointerException. Cependant, isEmpty fonctionnera correctement lorsque vous avez String str = ”” c'est-à-dire une chaîne vide.

Maintenant, si vous voulez affecter la valeur str à str = null. Dans ce cas, str == null vous renverra vrai.

Pour une explication détaillée, vous pouvez suivre le lien de vérification mentionné:

Différence entre la méthode égale et l'opérateur "==" en Java - Question d'entretien

Réponse 5:

Si vous comparez une chaîne littérale, vous pouvez faire quelque chose comme:

if ("Chaîne littérale" .equals (stringThatMightBeNull)){ faire quelque chose();}

Cependant, vous pourriez considérer cela comme moins lisible et ne vaut donc pas la peine de sauter une vérification nulle distincte.


Réponse 6:

Vous pouvez également utiliser la classe StringUtils de la bibliothèque Apache commons. La méthode isEmpty vérifie la valeur null et la chaîne elle-même en interne.