Метод System.String.IsNullOrEmpty
В этой статье приводятся дополнительные замечания к справочной документации по этому API.
IsNullOrEmpty— это удобный метод, позволяющий одновременно проверить, является null
ли String значение или значением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
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
Метод можно использовать IsNullOrWhiteSpace для проверки того, является null
ли строка, ее значением String.Emptyили состоит только из пробелов.
Что такое строка NULL?
Строка , null
если она не была назначена (в C++ и Visual Basic) или если она явно была назначена.null
Хотя компонент составного форматирования может корректно обрабатывать строку NULL, как показано в следующем примере, попытка вызвать ее, если ее члены вызывают ошибку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.
Что такое пустая строка?
Строка пуста, если она явно назначена пустая строка ("") или 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.
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.