Partager via


Méthode System.String.IsNullOrEmpty

Cet article vous offre des remarques complémentaires à la documentation de référence pour cette API.

IsNullOrEmpty est une méthode pratique qui vous permet de tester simultanément si une String valeur est null ou non String.Empty. Il équivaut au code suivant :

bool TestForNullOrEmpty(string s)
{
    bool result;
    result = s == null || s == string.Empty;
    return result;
}

string s1 = null;
string s2 = "";
Console.WriteLine(TestForNullOrEmpty(s1));
Console.WriteLine(TestForNullOrEmpty(s2));

// The example displays the following output:
//    True
//    True
result = s Is Nothing OrElse s = String.Empty
let testForNullOrEmpty (s: string): bool =
    s = null || s = String.Empty

let s1 = null
let s2 = ""

printfn "%b" (testForNullOrEmpty s1)
printfn "%b" (testForNullOrEmpty s2)

// The example displays the following output:
//    true
//    true

Vous pouvez utiliser la IsNullOrWhiteSpace méthode pour tester si une chaîne est null, sa valeur est String.Emptyou se compose uniquement de caractères d’espace blanc.

Qu’est-ce qu’une chaîne Null ?

Une chaîne est null si elle n’a pas été affectée à une valeur (en C++ et Visual Basic) ou si elle a été explicitement affectée à une valeur de null. Bien que la fonctionnalité de mise en forme composite puisse gérer correctement une chaîne Null, comme l’illustre l’exemple suivant, la tentative d’appel d’une chaîne si ses membres lèvent un NullReferenceException.

  String s = null;

  Console.WriteLine("The value of the string is '{0}'", s);

  try 
  {
      Console.WriteLine("String length is {0}", s.Length);
  }
  catch (NullReferenceException e) 
  {
      Console.WriteLine(e.Message);
  }

  // The example displays the following output:
  //     The value of the string is ''
  //     Object reference not set to an instance of an object.
Module Example
   Public Sub Main()
      Dim s As String

      Console.WriteLine("The value of the string is '{0}'", s)

      Try 
         Console.WriteLine("String length is {0}", s.Length)
      Catch e As NullReferenceException
         Console.WriteLine(e.Message)
      End Try   
   End Sub
End Module
' The example displays the following output:
'     The value of the string is ''
'     Object reference not set to an instance of an object.
let (s: string) = null

printfn "The value of the string is '%s'" s

try
    printfn "String length is %d" s.Length
with
    | :? NullReferenceException as ex -> printfn "%s" ex.Message

// The example displays the following output:
//     The value of the string is ''
//     Object reference not set to an instance of an object.

Qu’est-ce qu’une chaîne vide ?

Une chaîne est vide si elle est explicitement affectée à une chaîne vide («  ») ou String.Empty. Une chaîne vide a une Length valeur de 0. L’exemple suivant crée une chaîne vide et affiche sa valeur et sa longueur.

String s = "";
Console.WriteLine("The length of '{0}' is {1}.", s, s.Length);

// The example displays the following output:
//       The length of '' is 0.
Dim s As String = ""
Console.WriteLine("The length of '{0}' is {1}.", s, s.Length)
' The example displays the following output:
'        The length of '' is 0.
let s = ""
printfn "The length of '%s' is %d." s s.Length

// The example displays the following output:
//       The length of '' is 0.