c#发展

注册

 

发新话题 回复该主题

在NET中,C字符串可以为空值,微软 [复制链接]

1#
C#核心开发-第16单元-字符串-第6节:字符串空值判断C#核心开发-字符串空值判断1.string.Empty属性我们知道C#中的string类型是引用类型,默认值是null,但有时候我们需要值为空的字符串,也就是““,此时可以使用如下代码实现:字符串为空值-图1在图1中,使用了““表示空的字符串,但是在内存中,是会为空字符串分配空间的。而如果使用string.Empty属性表示空字符串,则不会在内存中分配空间。调用一下图1的代码,打上断点,按下F5键,如下图所示:string.Empty属性的使用-图2在图2中,虽然string.Empty属性最终也是““,但是不会在内存中分配空间。在C#中,string.Empty属性使用的完整代码如下:usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Text;usingSystem.Threading.Tasks;usingSystem.Text.RegularExpressions;namespaceYidosoft.Edu.Csharp.StringRegEx{classProgram{staticvoidMain(string[]args){Console.Title=一都编程-字符串;//空值stringstr1=;stringstr2=string.Empty;Console.ReadKey();}}}因此,在做.NET开发时,建议使用C#的string.Empty属性表示空字符串。2.string.IsNullOrEmpty()方法在C#中,使用string.IsNullOrEmpty()方法可以判断字符串是否为null或““。如果是null或”“,则返回true,否则返回false。下图是C#的string.IsNullOrEmpty()方法的例子:string.IsNullOrEmpty()方法的使用-图3string的IsNullOrEmpty()方法使用完整代码如下:namespaceYidosoft.Edu.Csharp.StringRegEx{classProgram{staticvoidMain(string[]args){Console.Title=一都编程-字符串;//判断null或Console.Write(请输入学生的姓名:);varname=Console.ReadLine();if(string.IsNullOrEmpty(name)){Console.WriteLine(姓名不可为空。);}else{Console.WriteLine(name);}Console.ReadKey();}}}在图3的代码中,首先输入一个学生的姓名,如果没有输入,则为空值,输出提示信息,如果输入的姓名,则显示出姓名。运行一下此C#代码,结果如下:字符串判断结果-图4图4是没有输入任何值直接打回车键的情况,C#中的string.IsNullOrEmpty()方法已判断出是空值。另外,C#中还有一个判断字符串是否为null、空或空白字符的IsNullOrWhiteSpace()方法,也是返回bool类型的值。空白字符是指一些特殊符号生成的空白,如换行符等,这些符号可能是隐藏的,但在用户使用我们的程序时,确实能够输入这些字符,所以使用IsNullOrWhiteSpace()方法就可以过滤掉。C#中IsNullOrWhiteSpace()方法的使用代码如下:varname=Console.ReadLine();if(string.IsNullOrWhiteSpace(name)){Console.WriteLine(姓名不可为空。);}else{Console.WriteLine(name);}C#中的IsNullOrWhiteSpace()方法比IsNullOrEmpty()方法多了一个空白值的判断。在以后的编程中,建议使用IsNullOrWhiteSpace()判断字符串是否为空值。C#深入编程-线上视频图文课堂配套课后技能作业+理论考试+源码淘宝¥购买已下架
分享 转发
TOP
发新话题 回复该主题