String.IsNullOrEmpty(String) Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Wskazuje, czy określony ciąg jest null
, czy ciąg pusty ("").
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
true
value
jeśli parametr jest null
lub jest pusty ciąg (""); w przeciwnym razie , false
.
Przykłady
Poniższy przykład analizuje trzy ciągi i określa, czy każdy ciąg ma wartość, jest pustym ciągiem, czy też jest 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.
let test (s: string): string =
if String.IsNullOrEmpty(s)
then "is null or empty"
else $"(\"{s}\") is neither null nor empty"
let s1 = "abcd"
let s2 = ""
let s3 = null
printfn "String s1 %s" (test s1)
printfn "String s2 %s" (test s2)
printfn "String s2 %s" (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.
Uwagi
IsNullOrEmptyjest wygodną metodą, która umożliwia jednoczesne testowanie, czy wartość jest null
String.Emptywartością String . 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
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
Możesz użyć IsNullOrWhiteSpace metody , aby sprawdzić, czy ciąg to null
, jego wartość to String.Empty, czy składa się tylko z białych znaków.
Co to jest ciąg o wartości null?
Ciąg jest takinull
, jeśli nie został przypisany do wartości (w języku C++ i Visual Basic) lub jeśli jawnie przypisano mu wartość null
. Chociaż funkcja formatowania złożonego może bezpiecznie obsługiwać ciąg o wartości null, jak pokazano w poniższym przykładzie, próba wywołania funkcji , jeśli jej elementy członkowskie zgłaszają wyjątek 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.
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.
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.
let s = ""
printfn "The length of '%s' is %d." s s.Length
// The example displays the following output:
// The length of '' is 0.