Delen via


Methode System.String.IsNullOrEmpty

Opmerking

In dit artikel vindt u aanvullende opmerkingen in de referentiedocumentatie voor deze API.

IsNullOrEmpty is een handige methode waarmee u tegelijkertijd kunt testen of een Stringnull is of de waarde ervan String.Emptyis. Deze is gelijk aan de volgende code:

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

U kunt de methode IsNullOrWhiteSpace gebruiken om te testen of een tekenreeks nullis, of de waarde ervan String.Emptyis of dat deze alleen uit spatietekens bestaat.

Wat is een null-tekenreeks?

Een tekenreeks wordt null als er geen waarde is toegewezen (in C++ en Visual Basic) of als deze expliciet een waarde van nullis toegewezen. Hoewel de functie samengestelde opmaak een null-tekenreeks correct kan verwerken, zoals in het volgende voorbeeld wordt weergegeven, wordt geprobeerd er een aan te roepen als de leden een NullReferenceExceptiongenereren.

  String s = null;

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

  try 
  {
      Console.WriteLine($"String length is {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.

Wat is een lege tekenreeks?

Een tekenreeks is leeg als er expliciet een lege tekenreeks ("") of String.Emptyis toegewezen. Een lege tekenreeks heeft een "Length" van 0. In het volgende voorbeeld wordt een lege tekenreeks gemaakt en worden de waarde en lengte ervan weergegeven.

String s = "";
Console.WriteLine($"The length of '{s}' is {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.