SSブログ

ちょっとC#書く

環境は C# 2010Exp .NET Fw 4.0
時間単位はTicks

String a = "not null!";
の時
前者は5600
後者は11700

String a = "";
の時
前者は5600
後者は8700

String a = null;
の時
前者は5600
後者は4100

つまりIsNullOrEmptyは一定の速度なので使うべき。
nullチェック用に使うとnullで来ることを想定していないため平均的には
一番最初の条件がHitする確率が高いはずである。

sw.Start();
for (int i = 0; i < 500000; i++)
{
    if (String.IsNullOrEmpty(a)) { }
}
sw.Stop();
Console.WriteLine(sw.ElapsedTicks);
sw.Reset();

sw.Start();
for (int i = 0; i < 500000; i++)
{
    if (a == null || a == "") { }
}
sw.Stop();
Console.WriteLine(sw.ElapsedTicks);
sw.Reset();

nice!(0)  コメント(0)  トラックバック(0) 

nice! 0

コメント 0

コメントを書く

お名前:
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

トラックバック 0

ちょっとSQL文書くC#メモ ブログトップ

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。