隨筆-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 閱讀(358) 評論(0)  編輯  收藏 所屬分類: java
          主站蜘蛛池模板: 海口市| 永靖县| 金昌市| 县级市| 龙海市| 安西县| 辽阳县| 弋阳县| 洛宁县| 马龙县| 黄陵县| 元谋县| 城口县| 潮州市| 通州市| 闸北区| 琼中| 蕲春县| 德化县| 张掖市| 察雅县| 淮滨县| 淮安市| 凤庆县| 连江县| 文水县| 枣庄市| 昭苏县| 崇明县| 偃师市| 邢台县| 遂昌县| 郸城县| 富顺县| 青河县| 盐源县| 裕民县| 攀枝花市| 彭州市| 绵阳市| 许昌市|