String.IsNullOrEmpty(String) Metoda

Definicja

Wskazuje, czy określony ciąg jest, null czy jest pustym ciągiem ("").

public:
 static bool IsNullOrEmpty(System::String ^ value);
public static bool IsNullOrEmpty (string value);
public static bool IsNullOrEmpty (string? value);
static member IsNullOrEmpty : string -> bool
Public Shared Function IsNullOrEmpty (value As String) As Boolean

Parametry

value
String

Ciąg do przetestowania.

Zwraca

Boolean

true jeśli parametr value ma wartość lub jest null pustym ciągiem (""); w przeciwnym razie false .

Przykłady

Poniższy przykład sprawdza trzy ciągi i określa, czy każdy ciąg ma wartość, jest pustym ciągiem, czy jest null ciągiem .

using namespace System;
String^ Test( String^ s )
{
   if (String::IsNullOrEmpty(s))
      return "is null or empty";
   else
      return String::Format( "(\"{0}\") is neither null nor empty", s );
}

int main()
{
   String^ s1 = "abcd";
   String^ s2 = "";
   String^ s3 = nullptr;
   Console::WriteLine( "String s1 {0}.", Test( s1 ) );
   Console::WriteLine( "String s2 {0}.", Test( s2 ) );
   Console::WriteLine( "String s3 {0}.", Test( s3 ) );
}
// The example displays the following output:
//       String s1 ("abcd") is neither null nor empty.
//       String s2 is null or empty.
//       String s3 is null or empty.
string s1 = "abcd";
string s2 = "";
string s3 = null;

Console.WriteLine("String s1 {0}.", Test(s1));
Console.WriteLine("String s2 {0}.", Test(s2));
Console.WriteLine("String s3 {0}.", Test(s3));

String Test(string s)
{
if (String.IsNullOrEmpty(s))
    return "is null or empty";
else
    return String.Format("(\"{0}\") is neither null nor empty", s);
}

// The example displays the following output:
//       String s1 ("abcd") is neither null nor empty.
//       String s2 is null or empty.
//       String s3 is null or empty.
Class Sample
   Public Shared Sub Main()
      Dim s1 As String = "abcd"
      Dim s2 As String = ""
      Dim s3 As String = Nothing
      
      Console.WriteLine("String s1 {0}.", Test(s1))
      Console.WriteLine("String s2 {0}.", Test(s2))
      Console.WriteLine("String s3 {0}.", Test(s3))
   End Sub
   
   Public Shared Function Test(s As String) As String
      If String.IsNullOrEmpty(s) Then
         Return "is null or empty"
      Else
         Return String.Format("(""{0}"") is neither null nor empty", s)
      End If
   End Function 
End Class  
' The example displays the following output:
'       String s1 ("abcd") is neither null nor empty.
'       String s2 is null or empty.
'       String s3 is null or empty.

Uwagi

IsNullOrEmpty jest wygodną metodą, która umożliwia jednoczesne przetestowanie, czy wartość to , czy String null jej wartość to String.Empty . Odpowiada to następującemu kodowi:

result = s == nullptr || s == String::Empty;
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

Możesz użyć metody , aby sprawdzić, czy ciąg jest ciągiem , jego wartością jest , czy składa się tylko ze IsNullOrWhiteSpace null znaków String.Empty odstępu.

Co to jest ciąg o wartości null?

Ciąg to , jeśli nie przypisano do niego wartości (w języku C++ i Visual Basic) lub jeśli jawnie przypisano do niego null wartość null . Mimo że funkcja formatowania złożonego może bezpiecznie obsłużyć ciąg o wartości null, jak pokazano w poniższym przykładzie, próba wywołania jednego z nich, jeśli jej elementy członkowskie zrzucą element NullReferenceException .

using namespace System;

void main()
{
   String^ s;
  
   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.
  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.

Co to jest pusty ciąg?

Ciąg jest pusty, jeśli jest jawnie przypisany pusty ciąg ("") lub String.Empty . Pusty ciąg ma wartość Length 0. Poniższy przykład tworzy pusty ciąg i wyświetla jego wartość oraz jego długość.

String^ s = "";
Console::WriteLine("The length of '{0}' is {1}.", s, s->Length);
// The example displays the following output:
//       The length of '' is 0.
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.

Dotyczy

Zobacz też