我一直在試圖優化我的代碼,使其更簡潔和可讀,並希望我不會導致性能較差。我認爲我的改變可能會減慢我的應用程序,但它可能只是在我的腦海中。是否有任何之間的性能差異:?:Operator Vs.如果聲明性能
Command.Parameters["@EMAIL"].Value = email ?? String.Empty;
和
Command.Parameters["@EMAIL"].Value = (email == null) ? String.Empty: email;
和
if (email == null)
{
Command.Parameters["@EMAIL"].Value = String.Empty
}
else
{
Command.Parameters["@EMAIL"].Value = email
}
我對可讀性的偏好將是空合併運算符,我只是不希望它影響性能。
當然,請記住,很多程序員可以閱讀? :語句與常規語句一樣快。在某些情況下,它們比使用沒有大括號的if/else語句更加清晰。 – NotMe 2009-02-13 19:49:07
我同意。這裏的許多帖子都是性能問題,詢問一些微小的調整(比+ + 1快++),這些都沒有關係。速度來自算法的複雜性:減少大量的內存拷貝,快速搜索容器,適當地散列。小的調整沒有性能影響。 – abelenky 2009-02-13 19:55:41
-1:雖然chublogga的觀點都是真實有效的,但是它們並沒有回答原來的問題。 OP是一個成年人,可以選擇自己的架構/可讀性,casperOne的答案對於具體的性能問題來說確實是一個更有趣和直接的答案。 – nezroy 2009-02-13 20:33:49