String.IsNullOrEmpty(String) Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Указывает, действительно ли указанная строка является строкой null
или пустой строкой ("").
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
Параметры
- value
- String
Строка для проверки.
Возвращаемое значение
Значение true
, если параметр value
равен null
или пустой строке (""); в противном случае — значение false
.
Примеры
В следующем примере изучаются три строки и определяется, имеет ли каждая строка значение, является пустой строкой или значение 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 — Это удобный метод, позволяющий одновременно проверить, является ли String null
значение значением или String.Empty . Он эквивалентен следующему коду:
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
Метод можно использовать IsNullOrWhiteSpace для проверки, является ли строка null
, ее значение String.Empty или состоит только из пробельных символов.
Что такое строка со значением NULL?
строка является, null
если ей не было присвоено значение (в C++ и Visual Basic) или если ей явно присвоено значение null
. Хотя функция составного форматирования может корректно обработать строку со значением NULL, как показано в следующем примере, при попытке вызвать метод, если его члены выдают исключение 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.
Что такое пустая строка?
Строка пуста, если ей явно присваивается пустая строка ("") или String.Empty . Пустая строка имеет значение Length 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.
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.