條條大路通羅馬,一種需求,有很多種編碼方式可以實現,如果在實現的基礎上進行優化,豈不是更好。
(1)foreach 比for語句具有更好的執行效率。
foreach的平均時間只有for的30%,在兩者都可以使用的情況下,建議使用foreach,另外,用for寫入數據所花的時間大約是讀取數據時間的10倍。
(2)避免使用ArrayList。
因為任何對象添加到ArrayList都要封箱為System.Object類型,從ArrayList取出數據時,要拆箱為實際類型。建議使用泛型集合可以避免裝箱和拆箱的發生,從而提高性能。
(3)存放少量數據時可以用HashTable。
(4)為字符串容器聲明常量,不要直接把字符封裝在雙引號(“”)中。
(5)不要用UpperCase、Lowercase轉換字符串進行比較,用String.Compare代替。它可以忽略大小寫進行比較。
(6)用StringBuilder代替字符串的連接符“+”。
(7)避免在循環體內聲明變量,應該在循環體外聲明變量,在循環體內初始化。
(8)捕獲指定的異常,不要使用通用的System.Exception。
(9)不要用Exception控制程序流程。
捕獲異常對性能的損耗是眾所周知的。知道的異常最好用if語句來控制程序流程。
(10)使用using或者try/finally來做資源清理。
目前先整理這麼多。