IsNullOrWhiteSpace和IsNullOrEmpty

这篇文章对比了C#中的IsNullOrWhiteSpace和IsNullOrEmpty两个方法,用于检查字符串是否为空或仅包含空白字符。通过示例代码,展示了它们在处理空字符串、null、空白字符和非空字符串时的行为差异,强调了IsNullOrWhiteSpace还会考虑字符串中的空白字符情况。
摘要由CSDN通过智能技术生成

IsNullOrWhiteSpace和IsNullOrEmpty这两个方法是与判断string字符串是否为空有关的两个方法。二者用来对比学习。
IsNullOrWhiteSpace方法是用来判断指示指定的字符串是 null、空还是仅由空白字符组成。输入参数是一个字符串,输出是bool类型,如果字符串是null或空或由空白字符串组成,返回True,否则返回False。
IsNullOrEmpty方法用来判断指示指定的字符串是 null 还是空字符串 (“”)。输入输出与IsNullOrWhiteSpace方法类型一致。
下面使用简单的语句对这两个方法进行测试说明:

string str1 = "";
string str2 = null;
string str3 = string.Empty;
string str6 = "\t";
string str7 = new string(' ', 10);
string str8 = new string('a', 10);
bool a = string.IsNullOrWhiteSpace(str1);
bool a1 = string.IsNullOrEmpty(str1);
bool b = string.IsNullOrWhiteSpace(str2);
bool b1 = string.IsNullOrEmpty(str2);
bool c = string.IsNullOrWhiteSpace(str3);
bool c1 = string.IsNullOrEmpty(str3);
bool f = string.IsNullOrWhiteSpace(str6);
bool f1 = string.IsNullOrEmpty(str6);
bool str7_space = string.IsNullOrWhiteSpace(str7);
bool str7_enpty = string.IsNullOrEmpty(str7);
bool str8_space = string.IsNullOrWhiteSpace(str8);
bool str8_empty = string.IsNullOrEmpty(str8);
Console.WriteLine("str1为:" + str1 + "移除空白字符后长度为:" + str1.Trim().Length + "实际长度为:" + str1.Length);
Console.WriteLine("IsNullOrWhiteSpace值为:" + a + "---IsNullOrEmpty值为:" + a1);
Console.WriteLine();
Console.WriteLine("str2为:" + str2);
Console.WriteLine("IsNullOrWhiteSpace值为:" + b + "---IsNullOrEmpty值为:" + b1);
Console.WriteLine();
Console.WriteLine("str3为:" + str3 + "移除空白字符后长度为:" + str3.Trim().Length + "实际长度为:" + str3.Length);
Console.WriteLine("IsNullOrWhiteSpace值为:" + c + "---IsNullOrEmpty值为:" + c1);
Console.WriteLine();
Console.WriteLine();
Console.WriteLine("str6为:" +str6 + "移除空白字符后长度为:" + str6.Trim().Length + "实际长度为:" + str6.Length);
Console.WriteLine("IsNullOrWhiteSpace值为:" + f + "---IsNullOrEmpty值为:" + f1);
Console.WriteLine();
Console.WriteLine("str7为:" + str7 + "移除空白字符后长度为:" + str7.Trim().Length + "实际长度为:" + str7.Length);
Console.WriteLine("IsNullOrWhiteSpace值为:" + str7_space + "---IsNullOrEmpty值为:" + str7_empty);
Console.WriteLine();
Console.WriteLine("str8为:" + str8 + "移除空白字符后长度为:" + str8.Trim().Length + "实际长度为:" + str8.Length);
Console.WriteLine("IsNullOrWhiteSpace值为:" + str8_space + "---IsNullOrEmpty值为:" + str8_empty);
Console.ReadKey();

运行结果如下所示:
在这里插入图片描述
由运行结果可看出,当移除空白字符后长度为0时,IsNullOrWhiteSpace方法的结果为True,str7与str8对比最为明显,str7为10个空格字符,str8为10个字符a。可看出IsNullOrWhiteSpace方法可看作时 String.IsNullOrEmpty(value) || value.Trim().Length == 0;

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值