ArrayList的使用方法


從百度上看到關於ArrayList的使用方法,就自己照着敲了一遍記錄下來

 ArrayList就是動態數組,Java的鏈表類

按照順序向ArrayList中添加數據。

將a添加到list中:list.add("a");

package com.arraylist.demo;

import java.util.ArrayList;

public class add {

    public static void main(String[] args) {
        ArrayList<String> list = new ArrayList<String>();
        //添加數據
        list.add("a");
        list.add("b");
        System.out.println(list);

    }

}

結果:

[a, b]

 

在第N個數據后面添加一個數據

在第1個元素后面添加 e  :list.add(1, "e");

注意:ArrayList中必須有足夠多的數據,例如ArrayList中沒有任何數據,這個時候使用arraylist.add(1, "E");就會出現java.lang.IndexOutOfBoundsException異常。

package com.arraylist.demo;

import java.util.ArrayList;

public class add {

    public static void main(String[] args) {
        ArrayList<String> list = new ArrayList<String>();
        //添加數據
        list.add("a");
        list.add("b");
        System.out.println(list);
        list.add(1,"c");
        System.out.println(list);

    }

}

結果:

[a, b]
[a, c, b]

 

將一個ArrayList中的所有數據添加到另外一個ArraList中

將list1中的全部數據添加到list中:list.addAll(list1);

package com.arraylist.demo;

import java.util.ArrayList;

public class add {

    public static void main(String[] args) {
        ArrayList<String> list = new ArrayList<String>();
        //添加數據
        list.add("a");
        list.add("b");
        System.out.println("list:"+list);
        ArrayList<String> list1 = new ArrayList<String>();
        list1.add("c");
        list1.add("d");
        System.out.println("list1:"+list1);
        list.addAll(list1);
        System.out.println("list1添加到list中:"+list);
    }

}

結果:

list:[a, b]
list1:[c, d]
list1添加到list中:[a, b, c, d]

 

將一個ArrayList中的所有數據添加到另外一個ArraList中的第N個元素之后。

將list1中的全部數據添加到list中的第2個元素之后:list1.addAll(2,list);

package com.arraylist.demo;

import java.util.ArrayList;

public class add {

    public static void main(String[] args) {
        ArrayList<String> list = new ArrayList<String>();
        //添加數據
        list.add("a");
        list.add("b");
        System.out.println("list:"+list);
        ArrayList<String> list1 = new ArrayList<String>();
        list1.add("c");
        list1.add("d");
        System.out.println("list1:"+list1);
        list.addAll(1,list1);
        System.out.println("list1添加到list中:"+list);
    }

}

結果:

list:[a, b]
list1:[c, d]
list1添加到list中:[a, c, d, b]

按照位置刪除單個數據

將list中第2個數據刪除:list.remove(2);

注意:位置從0開始計算(0、1、2、3...)

package com.arraylist.demo;

import java.util.ArrayList;

public class add {

    public static void main(String[] args) {
        ArrayList<String> list = new ArrayList<String>();
        //添加數據
        list.add("a");
        list.add("b");
        System.out.println("list:"+list);
        list.remove(0);
        System.out.println("刪除后list:"+list);

    }

}

 

結果:

list:[a, b]
刪除后list:[b]

 

按照內容刪除單個數據

用法:將list中的數據"b"刪除:list.remove("b");

注意:對於int,String,char這樣的原始類型數據是可以刪除的,但是對於復雜對象,例如自己編寫的User類、Person類對象,需要重寫equals方法,負責remove方法無法匹配刪除。

package com.arraylist.demo;

import java.util.ArrayList;

public class add {

    public static void main(String[] args) {
        ArrayList<String> list = new ArrayList<String>();
        //添加數據
        list.add("a");
        list.add("b");
        System.out.println("list:"+list);
        list.remove("a");
        System.out.println("刪除后list:"+list);
    }

}

結果:

list:[a, b]
刪除后list:[b]

按照集合同時刪除多個數據

按照list1中的數據來刪除list:list.removeAll(list1);

package com.arraylist.demo;

import java.util.ArrayList;

public class add {

    public static void main(String[] args) {
        ArrayList<String> list = new ArrayList<String>();
        //添加數據
        list.add("a");
        list.add("b");
        System.out.println("list:"+list);
        ArrayList<String> list1 = new ArrayList<String>();
        list1.add("c");
        list1.add("b");
        System.out.println("list1:"+list1);
        list.removeAll(list1);
        System.out.println("刪除后list:"+list);
        
    }

}

結果:

list:[a, b]
list1:[c, b]
刪除后list:[a]

 

清空ArrayList

清空list:list.clear();

package com.arraylist.demo;

import java.util.ArrayList;

public class add {

    public static void main(String[] args) {
        ArrayList<String> list = new ArrayList<String>();
        //添加數據
        list.add("a");
        list.add("b");
        System.out.println("list:"+list);
        list.clear();
        System.out.println("清空后list:"+list);
        
    }

}

結果:

list:[a, b]
清空后list:[]

修改指定位置的元素

將list中第2個元素,修改為M:list.set(2, "M");

注意:位置從0開始計算(0、1、2、3...)

package com.arraylist.demo;

import java.util.ArrayList;

public class add {

    public static void main(String[] args) {
        ArrayList<String> list = new ArrayList<String>();
        //添加數據
        list.add("a");
        list.add("b");
        System.out.println("list:"+list);
        list.set(1,"M");
        System.out.println("修改后list:"+list);
        
    }

}

結果:

list:[a, b]
修改后list:[a, M]

獲取指定位置元素

獲取list中第1個元素:String ele = list.get(0);

注意:位置從0開始計算(0、1、2、3...)

package com.arraylist.demo;

import java.util.ArrayList;

public class add {

    public static void main(String[] args) {
        ArrayList<String> list = new ArrayList<String>();
        //添加數據
        list.add("a");
        list.add("b");
        System.out.println("list:"+list);
        String ele = list.get(0);
        System.out.println("獲取的值:"+ele);
        
    }

}

結果:

list:[a, b]
獲取的值:a

拷貝結束,繼續我的代碼修煉之路了~ ~ ~

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM