gpt4 book ai didi

c# - ""(空字符串)和 isNot Nothing 之间的区别?

转载 作者:行者123 更新时间:2023-12-03 23:35:05 24 4
gpt4 key购买 nike

我正在处理一个必须验证参数是否为空的条件。让我们假设参数是 Email。我必须检查向内参数 Email 是否为空。我可以通过多种方式做到这一点,但我不确定要继续使用哪一种。

我正在考虑从以下语句中检查:

1.Email = "" 检查email是否为空字符串。2. Email isNot Nothing

我想知道这两种功能的区别。如果有更多与验证空字符串相关的函数或参数,您也可以编写。

谢谢。

最佳答案

Stringreference type ,这意味着它可以有一个空引用

例如

string myString = null;

也可以是empty,也就是说有一个reference对它,而且它的字符长度为0

例如

string myString = "";
// or
string myString = string.Empty;

为了完整起见,它还可以有空格

例如

string myString = "   ";

你可以像这样检查 null

if(myString == null)

你可以检查 empty

if(myString == "")

// or

if(myString == string.Empty)

你可以同时检查,不是 null 也不是 empty

if(myString != null && myString != string.Empty)

您可以使用 Null conditional OperatorLength 来检查两者都不是 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 在检查用户输入时通常更加稳健

关于c# - ""(空字符串)和 isNot Nothing 之间的区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60483112/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com