是否使用string. isnullorempty (string)检查字符串时,认为有string. isnullowhitespace (string)在。net 4.0及以上?
当前回答
它说它所有的IsNullOrEmpty()不包括白间距,而IsNullOrWhiteSpace()做!
IsNullOrEmpty() 零 空
IsNullOrWhiteSpace()如果字符串是: 零 空 -只包含空白
其他回答
它们是不同的函数。你应该根据你的情况决定你需要什么。
我不认为使用它们中的任何一种是不好的做法。大多数情况下,IsNullOrEmpty()就足够了。但你可以选择:)
在.Net标准2.0中:
string. isnullorempty():指定的字符串是空字符串还是空字符串。
Console.WriteLine(string.IsNullOrEmpty(null)); // True
Console.WriteLine(string.IsNullOrEmpty("")); // True
Console.WriteLine(string.IsNullOrEmpty(" ")); // False
Console.WriteLine(string.IsNullOrEmpty(" ")); // False
string. isnullorwhitespace():指定的字符串是否为空、空或仅由空白字符组成。
Console.WriteLine(string.IsNullOrWhiteSpace(null)); // True
Console.WriteLine(string.IsNullOrWhiteSpace("")); // True
Console.WriteLine(string.IsNullOrWhiteSpace(" ")); // True
Console.WriteLine(string.IsNullOrWhiteSpace(" ")); // True
注意转义字符:
String.IsNullOrEmpty(""); //True
String.IsNullOrEmpty(null); //True
String.IsNullOrEmpty(" "); //False
String.IsNullOrEmpty("\n"); //False
String.IsNullOrEmpty("\t"); //False
String.IsNullOrEmpty("hello"); //False
在这里:
String.IsNullOrWhiteSpace("");//True
String.IsNullOrWhiteSpace(null);//True
String.IsNullOrWhiteSpace(" ");//True
String.IsNullOrWhiteSpace("\n");//True
String.IsNullOrWhiteSpace("\t");//True
String.IsNullOrWhiteSpace("hello");//False
如果对传递给IsNullOrEmpty()的值应用Trim,两个方法的结果将是相同的。
就性能而言,IsNullOrWhiteSpace()会更快。
它说它所有的IsNullOrEmpty()不包括白间距,而IsNullOrWhiteSpace()做!
IsNullOrEmpty() 零 空
IsNullOrWhiteSpace()如果字符串是: 零 空 -只包含空白
用IsNullOrEmpty和IsNullOrwhiteSpace检查一下
string sTestes = "I like sweat peaches";
Stopwatch stopWatch = new Stopwatch();
stopWatch.Start();
for (int i = 0; i < 5000000; i++)
{
for (int z = 0; z < 500; z++)
{
var x = string.IsNullOrEmpty(sTestes);// OR string.IsNullOrWhiteSpace
}
}
stopWatch.Stop();
// Get the elapsed time as a TimeSpan value.
TimeSpan ts = stopWatch.Elapsed;
// Format and display the TimeSpan value.
string elapsedTime = String.Format("{0:00}:{1:00}:{2:00}.{3:00}",
ts.Hours, ts.Minutes, ts.Seconds,
ts.Milliseconds / 10);
Console.WriteLine("RunTime " + elapsedTime);
Console.ReadLine();
您将看到IsNullOrWhiteSpace要慢得多:/
推荐文章
- 如何将linq结果转换为哈希集或哈希集
- 通用 TryParse
- 'useLegacyV2RuntimeActivationPolicy'在.NET 4配置中做什么?
- HTTP POST返回错误:417“期望失败。”
- 如何在。net中创建和使用资源
- 为什么Path。以Path.DirectorySeparatorChar开头的文件名合并不正确?
- 如何在c#中获得正确的时间戳
- Linq选择列表中存在的对象(A,B,C)
- c# .NET中的App.config是什么?如何使用它?
- c#:如何获得一个字符串的第一个字符?
- String类中的什么方法只返回前N个字符?
- 我如何提高ASP。NET MVC应用程序性能?
- 更好的方法将对象转换为int类型
- 我可以将c#字符串值转换为转义字符串文字吗?
- 在c#中转换char到int