漁人碼頭

          天行健,君子以自強不息。地勢坤,君子以厚德載物。
          posts - 12, comments - 16, trackbacks - 0, articles - 43
            BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

          ArrayList和Vector的區(qū)別

          Posted on 2006-12-13 10:20 Fisher 閱讀(849) 評論(0)  編輯  收藏 所屬分類: Java 學(xué)習(xí)筆記
          ArrayList類 ?
          ?   ArrayList實現(xiàn)了可變大小的數(shù)組。它允許所有元素,包括null。ArrayList沒有同步。 ?
          ? size,isEmpty,get,set方法運行時間為常數(shù)。但是add方法開銷為分攤的常數(shù),添加n個元素需要O(n)的時間。其他的方法運行時間為線性。 ?
          ?   每個ArrayList實例都有一個容量(Capacity),即用于存儲元素的數(shù)組的大小。這個容量可隨著不斷添加新元素而自動增加,但是增長算法并沒有定義。當需要插入大量元素時,在插入前可以調(diào)用ensureCapacity方法來增加ArrayList的容量以提高插入效率。 ?
          ?   和LinkedList一樣,ArrayList也是非同步的(unsynchronized)。 ?
          ? ?
          ? Vector類 ?
          ?   Vector非常類似ArrayList,但是Vector是同步的。由Vector創(chuàng)建的Iterator,雖然和ArrayList創(chuàng)建的Iterator是同一接口,但是,因為Vector是同步的,當一個Iterator被創(chuàng)建而且正在被使用,另一個線程改變了Vector的狀態(tài)(例如,添加或刪除了一些元素),這時調(diào)用Iterator的方法時將拋出ConcurrentModificationException,因此必須捕獲該異常。??
          主站蜘蛛池模板: 静海县| 沅陵县| 石棉县| 县级市| 忻州市| 新乡县| 武陟县| 巨野县| 福鼎市| 台前县| 宝清县| 柳林县| 巴彦淖尔市| 竹溪县| 荥阳市| 门源| 普安县| 汕头市| 平乡县| 富宁县| 鸡西市| 彝良县| 棋牌| 上蔡县| 景洪市| 临西县| 嘉善县| 桑日县| 报价| 繁峙县| 崇义县| 从化市| 玛沁县| 高邑县| 永和县| 石城县| 东台市| 横峰县| 孝昌县| 普陀区| 伊金霍洛旗|