一、集合的概述與陣列的區別
集合的概述:
集合其實就是一個大小可變的容器,可以用來存盤多個資料
集合的特點: 集合的大小可以動態改變,可以存盤各種型別的資料
集合與陣列的區別:
陣列:陣列大小固定,只能存盤相同資料型別的資料
集合:集合大小可動態擴展,可以存盤各種參考型別的資料
二、ArrayList類概述
ArrayList類底層是大小可變的陣列的實作,存盤在內的資料稱為元素,也就是說 ArrayList 中可以不斷添加元素,其大小會自動增長,
使用ArrayList類的時候,在E出現的位置使用參考資料型別替換,表示該集合可以存盤哪種參考型別的 元素
三、ArrayList的構造方法
ArrayList() 構造一個初始容量為 10 的空串列,
格式:ArrayList<資料型別> 物件名=new Arraylist<>();
四、ArrayList類添加元素方法
public boolean add(E e):將指定的元素追加到此集合的末尾
public void add(int index,E element):在此集合中的指定位置插入指定的元素
public static void main(String[] args) {
/*
ArrayList類添加元素方法:
boolean add(E e) 將指定的元素添加在集合的末尾
void add(int index, E element) 將指定的元素插入在指定的索引位
置,
*/
// 創建了一個ArrayList集合物件,限制集合中的元素型別為String型別
ArrayList<String> list1 = new ArrayList<>();
// 往list1集合的末尾添加元素
list1.add("張三豐");
list1.add("章子怡");
list1.add("張翠山");
// 列印集合
System.out.println(list1);// [張三豐, 章子怡, 張翠山]
// 往list1集合所有為1的位置添加一個張無忌元素
list1.add(1, "張無忌");
System.out.println(list1);// [張三豐, 張無忌, 章子怡, 張翠山]
System.out.println("======================================");
// 創建一個ArrayList集合物件,可以存盤任意參考型別的資料
ArrayList list3 = new ArrayList();
// 往list3集合中添加任意參考資料型別的元素
list3.add("殷素素");
list3.add(18);// int---->自動轉換為Integer型別
list3.add(3.14);// double--->自動轉換為Double型別
System.out.println(list3);// [殷素素, 18, 3.14]
System.out.println("==========================");
// 創建一個ArrayList集合物件,限制集合中的元素型別為Integer型別
ArrayList<Integer> list4 = new ArrayList<>();
// 往list4集合中添加任意參考資料型別的元素
list4.add(10);
list4.add(20);
list4.add(30);
System.out.println(list4);// [10, 20, 30]
}
五、ArrayList類常用方法
public boolean remove(Object o) 洗掉指定的元素,回傳洗掉是否成功
public E remove(int index) 洗掉指定索引處的元素,回傳被洗掉的元素
public E set(int index, E element) 修改指定索引處的元素,回傳被修改的元素
public E get(int index) 回傳指定索引處的元素
public int size() 回傳集合中的元素的個數
public static void main(String[] args) {
ArrayList<String> list1 = new ArrayList<>();
list1.add("張柏芝");
list1.add("白百合");
list1.add("李小璐");
list1.add("馬蓉");
System.out.println(list1);// [張柏芝, 白百合, 李小璐, 馬蓉]
// 需求:洗掉馬蓉這個元素 boolean remove(Object o)
list1.remove("馬蓉");
System.out.println("洗掉馬蓉后的集合:" + list1);// [張柏芝, 白百合, 李小璐]
// 需求:洗掉索引為1的元素 E remove(int index)
String removeE = list1.remove(1);
System.out.println("被洗掉的元素是:" + removeE);// 白百合
System.out.println("洗掉索引為1的元素后的集合:" + list1);// [張柏芝, 李小璐]
// 需求:修改索引為1的元素為羅志祥 E set(int index, E element)
String setE = list1.set(1, "羅志祥");
System.out.println("被替換的元素是:" + setE);// 李小璐
System.out.println("替換索引為1的元素后的集合:" + list1);// [張柏芝, 羅志祥]
// 需求:獲取索引為0的元素 E get(int index)
String e = list1.get(0);
System.out.println("0索引上的元素是:" + e);// 張柏芝
// 需求:獲取集合中元素的個數 int size()
int size = list1.size();
System.out.println("集合中元素的個數是:" + size);// 2
// 回圈遍歷集合中所有元素
for (int i = 0; i < size; i++) {
System.out.println(list1.get(i));
}
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/382930.html
標籤:其他
下一篇:帶你走進函式堆疊幀
