<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                # Java `ArrayList`指南 > 原文: [https://howtodoinjava.com/java-arraylist/](https://howtodoinjava.com/java-arraylist/) Java 中的 `ArrayList`表示可調整大小的對象列表。 我們可以在此列表中添加,刪除,查找,排序和替換元素。 `ArrayList`是 Java 的集合框架的一部分,并實現 Java 的`List`接口。 **`ArrayList`類**的層次結構 Java `ArrayList`類擴展了實現`List`接口的`AbstractList`類。 `List`接口以分層順序擴展了`Collection`和`Iterable`接口。 ![ArrayList Hierarchy](https://img.kancloud.cn/31/2d/312da473a34b76994c3da04108ac85c4_500x217.png) ArrayList 層次結構 ## 1\. `ArrayList`特性 `ArrayList`具有以下特性: 1. **有序** – `ArrayList`中的元素保留其順序,默認情況下是其添加到列表的順序。 2. **基于索引** – 可以使用索引位置隨機訪問元素。 索引以`'0'`開頭。 3. **動態調整大小** – 當需要添加的元素數量超過當前大小時,`ArrayList`動態增長。 4. **不同步** – 默認情況下,`ArrayList`不同步。 程序員需要適本地使用`synchronized`關鍵字,或簡單地使用`Vector`類。 5. **允許重復** – 我們可以在`ArrayList`中添加重復元素。 不能成組放置。 ## 2\. `ArrayList`的內部工作 `ArrayList`類是圍繞后備數組實現的。 從`arraylist`添加或刪除的元素實際上是在此后備數組中修改的。 所有`arraylist`方法都訪問此數組并獲取/設置數組中的元素。 `ArrayList`基本上可以看作是 Java 中可調整大小的數組實現。 ```java public class ArrayList<E> extends AbstractList<E> implements List<E>, RandomAccess, Cloneable, java.io.Serializable { transient Object[] elementData; //backing array private int size; //array or list size //more code } ``` ## 3\. `ArrayList`示例 #### 3.1 創建`ArrayList` 通常,我們將創建一個空列表并向其中添加元素。 或者,我們將使用另一個現有集合創建一個`arraylist`。 ```java //Empty arraylist List<String> names = new ArrayList<>(); //Arraylist initialized with another collection List<Integer> numbers = new ArrayList<>(Arrays.asList(1,2,3,4,5)); ``` #### 3.2 添加和刪??除元素 使用`add()`,`set()`和`remove()`方法添加或更新列表中的元素。 ```java //Create arraylist List<String> names = new ArrayList<>(); names.add("lokesh"); //[lokesh] names.add("alex"); //[lokesh, alex] names.set(1, "brian"); //[lokesh, brian] names.remove(1); //[lokesh] ``` #### 3.2 迭代 使用`iterator()`或`listIterator()`獲取迭代器實例的引用。 該迭代器可用于迭代`arraylist`中的元素。 ```java ArrayList<Integer> digits = new ArrayList<>(Arrays.asList(1,2,3,4,5,6)); Iterator<Integer> iterator = digits.iterator(); while(iterator.hasNext()) { System.out.println(iterator.next()); } ``` 程序輸出。 ```java 1 2 3 4 5 6 ``` ## 4\. `ArrayList`方法 [`ArrayList add()`方法示例](https://howtodoinjava.com/java/collections/arraylist/arraylist-add-example/) [`ArrayList addAll()`方法示例](https://howtodoinjava.com/java/collections/arraylist/arraylist-addall-method-example/) [`ArrayList clear()`方法示例](https://howtodoinjava.com/java/collections/arraylist/clear-empty-arraylist/) [`ArrayList clone()` – 如何克隆`ArrayList`](https://howtodoinjava.com/java/collections/arraylist/arraylist-clone-deep-copy/) [`ArrayList contains()`方法示例](https://howtodoinjava.com/java/collections/arraylist/arraylist-contains/) [`ArrayList sureCapacity()`方法示例](https://howtodoinjava.com/java/collections/arraylist/arraylist-ensurecapacity-method/) [`ArrayList forEach()`方法示例](https://howtodoinjava.com/java/collections/arraylist/arraylist-foreach/) [`ArrayList get()`方法示例](https://howtodoinjava.com/java/collections/arraylist/arraylist-get-method-example/) [`ArrayList indexOf()`方法示例](https://howtodoinjava.com/java/collections/arraylist/arraylist-indexof-method/) [`ArrayList lastIndexOf()`方法示例](https://howtodoinjava.com/java/collections/arraylist/arraylist-lastindexof-example/) [`ArrayList listIterator()`方法示例](https://howtodoinjava.com/java/collections/arraylist/arraylist-listiterator/) [`ArrayList remove()`方法示例](https://howtodoinjava.com/java/collections/arraylist/arraylist-remove-example/) [`ArrayList removeAll()`方法示例](https://howtodoinjava.com/java/collections/arraylist/arraylist-removeall/) [`ArrayList keepAll()`方法示例](https://howtodoinjava.com/java/collections/arraylist/arraylist-retainall-example/) [`ArrayList replaceAll()`方法示例](https://howtodoinjava.com/java/collections/arraylist/arraylist-replaceall-example/) [`ArrayList removeIf()`方法示例](https://howtodoinjava.com/java/collections/arraylist/arraylist-removeif/) [`ArrayList sort()`方法示例](https://howtodoinjava.com/java/collections/arraylist/arraylist-sort-objects-by-field/) [`ArrayList spliterator()`方法示例](https://howtodoinjava.com/java/collections/arraylist/arraylist-spliterator-example/) [`ArrayList subList()`方法示例](https://howtodoinjava.com/java/collections/arraylist/arraylist-sublist/) [`ArrayList toArray()`方法示例](https://howtodoinjava.com/java/collections/arraylist/convert-arraylist-to-array/) ## 5\. Java `ArrayList`示例 #### 5.1 創建`ArrayList` [初始化`ArrayList`](https://howtodoinjava.com/java/collections/arraylist/initialize-arraylist/) [迭代`ArrayList`](https://howtodoinjava.com/java/collections/arraylist/iterate-through-objects/) #### 5.2 添加元素并刪除元素 [在`ArrayList`的特定索引處添加元素](https://howtodoinjava.com/java/collections/arraylist/add-replace-element-at-index/) [從`ArrayList`中刪除元素](https://howtodoinjava.com/java/collections/arraylist/remove-element-from-arraylist/) [將多個項目添加到`ArrayList`](https://howtodoinjava.com/java/collections/arraylist/add-multiple-elements-arraylist/) #### 5.3 排序`ArrayList` [對`ArrayList`排序](https://howtodoinjava.com/sort/sort-arraylist-strings-integers/) [使用比較器和可比較對象的`ArrayList`排序](https://howtodoinjava.com/sort/sort-arraylist-objects-comparable-comparator/) [`ArrayList`分組排序 - 多個比較器示例](https://howtodoinjava.com/sort/groupby-sort-multiple-comparators/) [使用`Collections.sort())`方法對`ArrayList`排序](https://howtodoinjava.com/sort/collections-sort/)的對象 #### 5.4 獲取/搜索 [獲取`ArrayList`的子列表](https://howtodoinjava.com/java/collections/arraylist/arraylist-sublist/) [查找`ArrayList`中元素的最后一個索引](https://howtodoinjava.com/java/collections/arraylist/arraylist-lastindexof-example/) [獲取`ArrayList`中元素的索引](https://howtodoinjava.com/java/collections/arraylist/arraylist-indexof-method/) [從`ArrayList`中獲取元素](https://howtodoinjava.com/java/collections/arraylist/arraylist-get-method-example/) [檢查 ArrayList](https://howtodoinjava.com/java/collections/arraylist/arraylist-contains/) 中是否存在元素 ## 6\. Java `ArrayList`上的其他教程 [比較兩個`ArrayList`](https://howtodoinjava.com/java/collections/arraylist/compare-two-arraylists/) [同步`ArrayList`](https://howtodoinjava.com/java/collections/arraylist/synchronize-arraylist/) [交換`ArrayList`](https://howtodoinjava.com/java/collections/arraylist/swap-two-elements-arraylist/) [序列化`ArrayList`](https://howtodoinjava.com/java/collections/arraylist/serialize-deserialize-arraylist/) [連接兩個`ArrayList`](https://howtodoinjava.com/java/collections/arraylist/merge-arraylists/) [清空`ArrayList`](https://howtodoinjava.com/java/collections/arraylist/empty-clear-arraylist/) [檢查`ArrayList`是否為空](https://howtodoinjava.com/java/collections/arraylist/check-arraylist-empty/) [替換`ArrayList`中現有元素的值](https://howtodoinjava.com/java/collections/arraylist/replace-element-arraylist/) [刪除`ArrayList`中的重復元素](https://howtodoinjava.com/java/collections/arraylist/remove-duplicate-elements/) ## 7\. 轉換 [將`LinkedList`轉換為`ArrayList`](https://howtodoinjava.com/java/collections/arraylist/convert-linkedlist-arraylist/) [將向量轉換為`ArrayList`](https://howtodoinjava.com/java/collections/arraylist/convert-vector-to-arraylist/) [將`ArrayList`轉換為字符串數組](https://howtodoinjava.com/java/collections/arraylist/arraylist-to-array/) [將數組轉換為`ArrayList`](https://howtodoinjava.com/java/collections/arraylist/array-to-arraylist/) [將`HashSet`轉換為`ArrayList`](https://howtodoinjava.com/java/collections/arraylist/hashset-to-arraylist/) ## 8\. 差異 [`ArrayList`與向量](https://howtodoinjava.com/java/collections/arraylist/arraylist-vs-vector/) [`ArrayList`與`LinkedList`](https://howtodoinjava.com/java/collections/arraylist/linkedlist-vs-arraylist/) 參考文獻: [`ArrayList` Java 文檔](https://docs.oracle.com/javase/10/docs/api/java/util/ArrayList.html)
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看