有许多种办法可以判断一个字符串是否为空,如 s == ""; s.Length == 0; s.IsNullOrEmpty(); 等等。那种最好呢?自己试一下吧 (C# 2.0).
using System.Diagnostics;
namespace POC
{
class Pragram
{
static void Main(string[] args)
{
for (int i = 0; i < 10; i++)
{
TestStringLength();
Console.WriteLine("------------------");
}
Console.Write("Press any key to exit...");
Console.Read();
}
private static void TestStringLength()
{
string s = "abc";
Stopwatch sw = new Stopwatch();
sw.Start();
for (int i = 0; i < 1000000; i++)
{
if (s.Equals("")) ;
}
sw.Stop();
Console.WriteLine(sw.ElapsedMilliseconds);
sw.Reset();
sw.Start();
for (int i = 0; i < 1000000; i++)
{
if (s == "") ;
}
sw.Stop();
Console.WriteLine(sw.ElapsedMilliseconds);
sw.Reset();
sw.Start();
for (int i = 0; i < 1000000; i++)
{
if (s.Length > 0) ;
}
sw.Stop();
Console.WriteLine(sw.ElapsedMilliseconds);
sw.Reset();
sw.Start();
for (int i = 0; i < 1000000; i++)
{
if (s!=null && s.Length > 0) ;
}
sw.Stop();
Console.WriteLine(sw.ElapsedMilliseconds);
sw.Reset();
sw.Start();
for (int i = 0; i < 1000000; i++)
{
if (!string.IsNullOrEmpty(s)) ;
}
sw.Stop();
Console.WriteLine(sw.ElapsedMilliseconds);
}
}
}