String.IsNullOrEmpty(String) String.IsNullOrEmpty(String) String.IsNullOrEmpty(String) String.IsNullOrEmpty(String) Method

定义

指示指定的字符串是 null 还是空字符串 ("")。Indicates whether the specified string is null or an empty string ("").

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

参数

value
String String String String

要测试的字符串。The string to test.

返回

如果 true 参数为 value 或空字符串 (""),则为 null;否则为 falsetrue if the value parameter is null or an empty string (""); otherwise, false.

示例

下面的示例检查三个字符串, 并确定每个字符串是否有值、是否为空字符串或null是否为。The following example examines three strings and determines whether each string has a value, is an empty string, or is null.

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.

注解

IsNullOrEmpty是一种便捷方法, 使您能够同时测试Stringnull还是其值为String.EmptyIsNullOrEmpty is a convenience method that enables you to simultaneously test whether a String is null or its value is String.Empty. 它等效于以下代码:It is equivalent to the following code:

result = s == nullptr || s == String::Empty;
result = s == null || s == string.Empty;
result = s Is Nothing OrElse s = String.Empty

您可以使用IsNullOrWhiteSpace方法来测试字符串是否为null, 其值为String.Empty, 或仅由空白字符组成。You can use the IsNullOrWhiteSpace method to test whether a string is null, its value is String.Empty, or it consists only of white-space characters.

什么是空字符串?What is a null string?

如果尚未为其分配值 (在和 Visual Basic 中C++ ), 或者如果已显式为其null赋值, 则为字符串。 nullA string is null if it has not been assigned a value (in C++ and Visual Basic) or if it has explicitly been assigned a value of null. 尽管复合格式设置功能可以适当地处理空字符串 (如下面的示例所示), 但如果其成员引发NullReferenceException, 则尝试调用它。Although the composite formatting feature can gracefully handle a null string, as the following example shows, attempting to call one if its members throws a 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.

什么是空字符串?What is an empty string?

如果字符串显式分配了空字符串 ("") 或String.Empty, 则为空字符串。A string is empty if it is explicitly assigned an empty string ("") or String.Empty. 空字符串的为Length 0。An empty string has a Length of 0. 下面的示例创建一个空字符串并显示其值和它的长度。The following example creates an empty string and displays its value and its length.

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.      

适用于

另请参阅