ArrayList使用方法及原理

2021-10-13 12:40:08 字數 3660 閱讀 7490

1.依次新增資料。

arraylistlist=new arraylist();

list.add("a");

list.add("b");

system.out.println("順序輸出資料"+list);

結果:順序輸出資料[a, b]

2.在第n個資料後面新增乙個資料。

arraylistlist=new arraylist();

list.add("a");

list.add("b");

system.out.println("順序輸出資料"+list);

list.add(1,"c");

system.out.println("新增後的陣列為"+list);

結果:

順序輸出資料[a, b]

新增後的陣列為[a, c, b]

3.在arraylist後繼續新增乙個arraylist陣列。

arraylistlist=new arraylist();

list.add("a");

list.add("b");

system.out.println("順序輸出資料"+list);

arraylistlist1=new arraylist();

list1.add("z");

list.addall(list1);

system.out.println("新增後的陣列為"+list);

結果:

順序輸出資料[a, b]

新增後的陣列為[a, c, b, z]

4.將arraylist陣列中的所有資料新增到另乙個arraylist的第n個元素之後。

arraylistlist=new arraylist();

list.add("a");

list.add("b");

system.out.println("順序輸出資料"+list);

list.add(1,"c");

arraylistlist1=new arraylist();

list1.add("z");

list.addall(2,list1);

system.out.println("新增後的陣列為"+list);

結果:

順序輸出資料[a, b]

新增後的陣列為[a, c, z, b]

1.按位置刪除

arraylistlist=new arraylist();

list.add("a");

list.add("b");

list.add(1,"c");

system.out.println("刪除前"+list);

list.remove(2);

system.out.println("刪除後"+list);

結果:

刪除前[a, c, b]

刪除後[a, c]

這裡解釋下為什麼不是刪除了c而是b,因為是從0開始計算的。

2.按照內容刪除單個資料

arraylistlist=new arraylist();

list.add("a");

list.add("b");

list.add(1,"c");

list.add(0,"c");

system.out.println("刪除前"+list);

list.remove("c");

system.out.println("刪除後"+list);

結果:

刪除前[c, a, c, b]

刪除後[a, c, b]

可以看出,只是刪除了第乙個「c」。

3.按照集合同時刪除多個資料

arraylistlist=new arraylist();

list.add("a");

list.add("b");

list.add(1,"c");

list.add(0,"c");

system.out.println("刪除前"+list);

arraylistlist1=new arraylist();

list1.add("a");

list1.add("c");

list.removeall(list1);

system.out.println("刪除後"+list);

結果:

刪除前[c, a, c, b]

刪除後[b]

可見,remveall方法會刪除所有list1中所包含的資料。

4.清空arraylist

arraylistlist=new arraylist();

list.add("a");

list.add("b");

list.add(1,"c");

list.add(0,"c");

system.out.println("刪除前"+list);

list.clear();

system.out.println("清除後"+list);

結果:

刪除前[c, a, c, b]

清除後修改指定的元素(按位置)

arraylistlist=new arraylist();

list.add("a");

list.add("b");

list.add(1,"c");

list.add(0,"c");

system.out.println("修改前"+list);

list.set(2,"c");

system.out.println("修改後"+list);

結果:

修改前[c, a, c, b]

修改後[c, a, c, b]

這個修改也是按照的位置修改,從0開始。

查詢第n個元素

arraylistlist=new arraylist();

list.add("a");

list.add("b");

list.add(1,"c");

list.add(0,"c");

string ele=list.get(1);

system.out.println("查詢第n個元素為:"+ele);

結果:

查詢第n個元素為:a

也是從0開始進行查詢的。

1.首先,arraylist裡面必須擁有足夠多的資料,如果沒有足夠的資料,它的部分功能就無法完成並會丟擲異常。

2.arraylist通過陣列實現,一旦我們例項化了arraylist無引數結構函式,那麼預設為陣列初始化長度為10;

3.add方法如果增加的元素個數超過了10個,那麼arraylist底層就會新生成乙個陣列,這個陣列的長度是原陣列的1.5倍+1,然後將原陣列的內容複製到新陣列當中,並且後續增加的內容也會被放入到新陣列中。當新陣列無法容納增加的元素時,重複上面的過程。一旦陣列超出了長度,就會開始擴充套件陣列。擴容陣列呼叫的方法是:arrays.copyof(objarr,objarr.length+1);

/

ArrayList的使用方法

1 什麼是arraylist arraylist就是傳說中的動態陣列,用msdn中的說法,就是array的複雜版本,它提供了如下一些好處 動態的增加和減少元素 實現了icollection和ilist介面 靈活的設定陣列的大小 2 如何使用arraylist 最簡單的例子 arraylist lis...

ArrayList的使用方法

1 什麼是arraylist 2 如何使用arraylist 最簡單的例子 arraylist list new arraylist for int i 0 i 10 i 給陣列增加10個int元素 list.add i 程式做一些處理 list.removeat 5 將第6個元素移除 for in...

ArrayList的使用方法

1 什麼是arraylist arraylist就是傳說中的動態陣列,用msdn中的說法,就是array的複雜版本,它提供了如下一些好處 2 如何使用arraylist 最簡單的例子 arraylist list new arraylist for int i 0 i 10 i 給陣列增加10個in...