以前刚入行的时候判断字符串的时候用
string a="a"; a==""; a==null;
后来发现了String.IsNullOrEmpty感觉方便了好多,但是后来发现如果字符串的空白String a=" ";IsNullOrEmpty就没法判断了,于是我今天发现了String.IsNullOrWhiteSpace,此方法只在framework4.0以上才能使用,官方的解释是:指示指定的字符串是 null、空还是仅由空白字符组成。
http://msdn.microsoft.com/zh-cn/library/system.string.isnullorwhitespace(v=vs.100).aspx
string a = null; string b = string.Empty; string c = ""; string d = " "; Console.WriteLine("a:{0};\r\n b:{1};\r\n c:{2};\r\n d:{3};\r\n", a, b, c, d); if (string.IsNullOrEmpty(a)) Console.WriteLine("a"); if (string.IsNullOrEmpty(b)) Console.WriteLine("b"); if (string.IsNullOrEmpty(c)) Console.WriteLine("c"); if (string.IsNullOrEmpty(d)) Console.WriteLine("d"); if (string.IsNullOrWhiteSpace(a)) Console.WriteLine("a1"); if (string.IsNullOrWhiteSpace(b)) Console.WriteLine("b1"); if (string.IsNullOrWhiteSpace(c)) Console.WriteLine("c1"); if (string.IsNullOrWhiteSpace(d)) Console.WriteLine("d1"); Console.Read();
执行结果:
由此可见当用IsNullOrEmpty时,d是没有输出来的,但是string.IsNullOrWhiteSpace却可以,如果执意要用前者又要判断空白的话,不妨与Trim组合使用。
[转]https://www.cnblogs.com/tony312ws/p/3727179.html
另一篇文章分析了源码:https://www.cnblogs.com/songwenjie/p/8657579.html
表示:IsNullOrWhiteSpace是IsNullOrEmpty的加强
MSDN说,IsNullOrWhiteSpace性能更高一些,推荐使用。可以测试一下。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
· 如何调用 DeepSeek 的自然语言处理 API 接口并集成到在线客服系统