一、ArrayList的初始化操作
使用ArrayList,可以通過以下3種方式進行初始化:
- 通過默認構造函數進行初始化,此時ArrayList的初始容量為10:
- 通過給定初始容量進行初始化:
- 通過另一個Collection進行初始化:
ArrayList<String> list1 = new ArrayList<>();
ArrayList<String> list2 = new ArrayList<>(20);
List<String> list3 = new ArrayList<>(); list3.add("apple"); list3.add("orange"); ArrayList<String> list4 = new ArrayList<>(list3);
二、ArrayList的添加操作
ArrayList的添加操作非常靈活,可以根據需求進行添加,常用的有以下2種方式:
- 使用add()方法,將元素添加到列表的末尾:
- 使用add(index,element)方法,將元素插入到指定位置:
ArrayList<String> list5 = new ArrayList<>(); list5.add("apple"); list5.add("orange"); list5.add("banana");
ArrayList<String> list6 = new ArrayList<>(); list6.add("apple"); list6.add("orange"); list6.add(1,"banana");
三、ArrayList的刪除操作
ArrayList提供了多種刪除元素的方法,常用的有以下兩種:
- 使用remove(int index)方法,刪除指定位置的元素:
- 使用remove(Object o)方法,刪除指定元素:
ArrayList<String> list7 = new ArrayList<>(); list7.add("apple"); list7.add("orange"); list7.add("banana"); list7.remove(1);
ArrayList<String> list8 = new ArrayList<>(); list8.add("apple"); list8.add("orange"); list8.add("banana"); list8.remove("orange");
四、ArrayList的修改操作
ArrayList提供了set(int index,E element)方法,可以將指定位置的元素替換為新元素:
ArrayList<String> list9 = new ArrayList<>(); list9.add("apple"); list9.add("orange"); list9.set(1,"banana");
五、ArrayList的查找操作
ArrayList提供了多種查找元素的方法,常用的有以下兩種:
- 使用get(int index)方法,獲取指定位置的元素:
- 使用indexOf(Object o)方法,獲取指定元素第一次出現的位置:
ArrayList<String> list10 = new ArrayList<>(); list10.add("apple"); list10.add("orange"); String result1 = list10.get(1);
ArrayList<String> list11 = new ArrayList<>(); list11.add("apple"); list11.add("orange"); int result2 = list11.indexOf("orange");
六、ArrayList的遍歷操作
ArrayList提供了多種遍歷列表元素的方法,常用的有以下3種方式:
- 使用for循環進行遍歷:
- 使用forEach循環進行遍歷:
- 使用迭代器進行遍歷:
ArrayList<String> list12 = new ArrayList<>(); list12.add("apple"); list12.add("orange"); for(int i=0;i<list12.size();i++){ String element = list12.get(i); System.out.println(element); }
ArrayList<String> list13 = new ArrayList<>(); list13.add("apple"); list13.add("orange"); for(String element:list13){ System.out.println(element); }
ArrayList<String> list14 = new ArrayList<>(); list14.add("apple"); list14.add("orange"); Iterator<String> iterator = list14.iterator(); while(iterator.hasNext()){ String element = iterator.next(); System.out.println(element); }
七、ArrayList的排序操作
使用Collection.sort(List list)方法,可以對ArrayList進行排序:
ArrayList<Integer> list15 = new ArrayList<>(); list15.add(3); list15.add(1); list15.add(5); list15.add(2); Collections.sort(list15);
八、ArrayList的清空操作
使用clear()方法,可以清空ArrayList:
ArrayList<String> list16 = new ArrayList<>(); list16.add("apple"); list16.add("orange"); list16.clear();
九、ArrayList的判斷操作
使用isEmpty()方法,可以判斷ArrayList是否為空:
ArrayList<String> list17 = new ArrayList<>(); boolean result3 = list17.isEmpty();
十、ArrayList的擴容操作
ArrayList使用動態數組實現,當元素數量超出容量時,會自動進行擴容。可以使用ensureCapacity(int minCapacity)方法手動指定容量。
ArrayList<String> list18 = new ArrayList<>(); list18.ensureCapacity(30);
十一、ArrayList的截取操作
使用subList(int fromIndex,int toIndex)方法,可以截取子列表:
ArrayList<String> list19 = new ArrayList<>(); list19.add("apple"); list19.add("orange"); list19.add("banana"); List<String> subList = list19.subList(1,3);
十二、ArrayList的反轉操作
使用Collections.reverse(List list)方法,可以對ArrayList進行反轉:
ArrayList<Integer> list20 = new ArrayList<>(); list20.add(1); list20.add(2); list20.add(3); Collections.reverse(list20);
十三、ArrayList的複製操作
使用Collections.copy(List dest,List src)方法,可以將一個ArrayList複製到另一個ArrayList中:
ArrayList<String> srcList = new ArrayList<>(); srcList.add("apple"); srcList.add("orange"); ArrayList<String> destList = new ArrayList<>(); destList.add("banana"); destList.add("pear"); Collections.copy(destList,srcList);
十四、ArrayList的轉數組操作
使用toArray()方法,將ArrayList轉化為數組:
ArrayList<String> list21 = new ArrayList<>(); list21.add("apple"); list21.add("orange"); Object[] array = list21.toArray();
十五、ArrayList的序列化操作
使用ObjectOutputStream將ArrayList進行序列化操作,代碼如下:
ArrayList<String> list22 = new ArrayList<>(); list22.add("apple"); list22.add("orange"); FileOutputStream fos = new FileOutputStream("listSerial.txt"); ObjectOutputStream oos = new ObjectOutputStream(fos); oos.writeObject(list22); oos.flush(); oos.close();
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/204222.html