“”(空字符串)和 isNot Nothing 之间的区别?
Difference between "" (Empty String) and isNot Nothing?
我正在处理一个必须验证参数是否为空的情况。让我们假设参数是 Email
。我必须检查内部参数 Email 是否为空。我可以通过多种方式做到这一点,但我不确定继续使用哪一种。
我正在考虑通过以下语句进行检查:
1.Email = ""
检查电子邮件是否为空字符串。
2. Email isNot Nothing
我想知道这两个功能的区别。如果空字符串校验相关的函数或者参数比较多,也可以这样写。
谢谢。
String
是一个 reference type,这意味着它 可以 有一个 空引用
例
string myString = null;
也可以是空,也就是说有一个reference,它的长度是0个字符
例
string myString = "";
// or
string myString = string.Empty;
为了完整起见,它也可以有白色space
例
string myString = " ";
您可以像这样检查 null
if(myString == null)
您可以检查 空
if(myString == "")
// or
if(myString == string.Empty)
您可以检查两者,不是 null
也不是 empty
if(myString != null && myString != string.Empty)
您可以使用 Null conditional Operator 和 Length
来检查两者不是 null
并且不为空
if(myString?.Length > 0)
或者您可以使用内置的字符串方法,使其更容易一些
String.IsNullOrEmpty(String) Method
Indicates whether the specified string is null or an empty string
("").
if(string.IsNullOrEmpty(myString))
String.IsNullOrWhiteSpace(String) Method
Indicates whether a specified string is null, empty, or consists only
of white-space characters.
if(string.IsNullOrWhiteSpace(myString))
注意 :值得注意的是,IsNullOrWhiteSpace
在检查用户输入时通常更健壮
您不应将 IsNot nothing 与引用类型变量一起使用。相反,当您需要验证电子邮件时,请将 string.IsNullOrEmpty(Email) 与 String.IsNullOrWhiteSpace(Email) 一起使用。
其实在C#
中string.Empty
相当于""
。参见 String.Empty
检查 Empty
或 Null
字符串的最佳方法是:
string.IsNullOrEmpty(Email)
或者您可以使用 string.IsNullOrWhiteSpace(Email)
额外检查空格。
if(!string.IsNullOrEmpty(Email))
{
// Good to proceed....
}
我正在处理一个必须验证参数是否为空的情况。让我们假设参数是 Email
。我必须检查内部参数 Email 是否为空。我可以通过多种方式做到这一点,但我不确定继续使用哪一种。
我正在考虑通过以下语句进行检查:
1.Email = ""
检查电子邮件是否为空字符串。
2. Email isNot Nothing
我想知道这两个功能的区别。如果空字符串校验相关的函数或者参数比较多,也可以这样写。
谢谢。
String
是一个 reference type,这意味着它 可以 有一个 空引用
例
string myString = null;
也可以是空,也就是说有一个reference,它的长度是0个字符
例
string myString = "";
// or
string myString = string.Empty;
为了完整起见,它也可以有白色space
例
string myString = " ";
您可以像这样检查 null
if(myString == null)
您可以检查 空
if(myString == "")
// or
if(myString == string.Empty)
您可以检查两者,不是 null
也不是 empty
if(myString != null && myString != string.Empty)
您可以使用 Null conditional Operator 和 Length
来检查两者不是 null
并且不为空
if(myString?.Length > 0)
或者您可以使用内置的字符串方法,使其更容易一些
String.IsNullOrEmpty(String) Method
Indicates whether the specified string is null or an empty string ("").
if(string.IsNullOrEmpty(myString))
String.IsNullOrWhiteSpace(String) Method
Indicates whether a specified string is null, empty, or consists only of white-space characters.
if(string.IsNullOrWhiteSpace(myString))
注意 :值得注意的是,IsNullOrWhiteSpace
在检查用户输入时通常更健壮
您不应将 IsNot nothing 与引用类型变量一起使用。相反,当您需要验证电子邮件时,请将 string.IsNullOrEmpty(Email) 与 String.IsNullOrWhiteSpace(Email) 一起使用。
其实在C#
中string.Empty
相当于""
。参见 String.Empty
检查 Empty
或 Null
字符串的最佳方法是:
string.IsNullOrEmpty(Email)
或者您可以使用 string.IsNullOrWhiteSpace(Email)
额外检查空格。
if(!string.IsNullOrEmpty(Email))
{
// Good to proceed....
}