隨筆-124  評論-49  文章-56  trackbacks-0
          1 Vector與ArrayList(HashTable/HashMap)
          Vector防止多線程運行,是線程安全的,效率低,安全性高。
          ArrayList在多線程環境下運行,是非線程安全的,效率高,安全性低。
          以下方法可以將ArrayList類標識為線程安全的對象:
          List list=Collections.synchronizedList(new ArrayList());
          2 ArrayList
            對于很大的數組,并且你預料到這個數組將會變得異常龐大,這里給出一個方法優化性能:
            final int N=1000000;
            ArrayList list
          =new ArrayList();
            
          //調用ensureCapacity()方法初始化大小
            list.ensureCapacity(N);
            
          for(int i=0;i<N;i++){
              list.add(obj);
            }

          3 ArrayList與LinkedList(同屬List接口)
            底層實現方法不同:ArrayList通過內部數組結構Object[]實現。
                                                LinkedList類似數據結構中的鏈表對象,通過一系列的內部記錄連接在一起來實現的。
          將一個元素插入到集合中的某個位置時,使用LinkedList比ArrayList快很多,原因是ArrayList插入后其后面所有元素后移一位,而LinkedList只需要添加一個指向頭部的引用即可。
          在集合中按下標查找元素時,使用ArrayList比LinkedList快很多。
          4 String與StringBuffer
          使用append()方法代替"+"運算
          5 字符串的length()方法
          6 charAt()與toCharArray()
          通過charAt()定位字符串時每次都要引起新的檢索過程,更好的辦法是轉化為字符數給,通過數組索引定位。
          7 簡單字符串格式化時,"+"運算優于String.formart()很多。
          posted on 2010-01-21 18:35 junly 閱讀(357) 評論(0)  編輯  收藏 所屬分類: java
          主站蜘蛛池模板: 天气| 迁西县| 天全县| 额尔古纳市| 浦北县| 毕节市| 卢湾区| 海安县| 偏关县| 阳泉市| 松溪县| 衡东县| 威海市| 太白县| 徐闻县| 临朐县| 黎城县| 陇南市| 和田县| 武城县| 邓州市| 长岭县| 秦安县| 冷水江市| 漯河市| 广河县| 崇阳县| 靖安县| 藁城市| 新余市| 郑州市| 吐鲁番市| 瑞金市| 五华县| 尼玛县| 吴江市| 灵璧县| 项城市| 舒城县| 海阳市| 许昌市|