首頁 > 軟體

Java中的ArrayList類常用方法和遍歷

2022-02-28 13:05:13

ArrayList類常用方法和遍歷

 ArrayList類對於元素的操作,基本體現在——增、刪、查。

常用的方法有

  • public boolean add(E e):將指定的元素新增到此集合的尾部。
  • public E remove(int index):移除此集合中指定位置上的元素。返回被刪除的元素。
  • public E get(int index):返回此集合中指定位置上的元素。返回獲取的元素。
  • public int size():返回此集合中的元素數。遍歷集合時,可以控制索引範圍,防止越界。
  • contains(object obj):判斷是否含有指定元素
  • public E set(int index, String element):把此集合中指定索引的元素,改為新的元素

這些都是最基本的方法,操作非常簡單,程式碼如下:

public class ArrayListDemo {
    public static void main(String[] args) {
        //建立集合物件
        ArrayList<String> list = new ArrayList<String>();
        //新增元素
        list.add("hello");
        list.add("world");
        list.add("java");
        //public E get(int index):返回指定索引處的元素
        System.out.println("get:"+list.get(0));
        System.out.println("get:"+list.get(1));
        System.out.println("get:"+list.get(2));
        //public int size():返回集合中的元素的個數
        System.out.println("size:"+list.size());
        //public E remove(int index):刪除指定索引處的元素,返回被刪除的元素
        System.out.println("remove:"+list.remove(0));
        //遍歷輸出
        for(int i = 0; i < list.size(); i++){
            System.out.println(list.get(i));
        }
    }
}

ArrayList類方法總結

關於ArrayList

ArrayList是集合框架List介面的實現類(陣列實現)

List介面是一個有序的 Collection,使用此介面能夠精確的控制每個元素插入的位置,能夠通過索引(元素在List中位置,類似於陣列的下標)來存取List中的元素,第一個元素的索引為 0,而且允許有相同的元素。List 介面儲存一組不唯一,有序(插入順序)的物件。

ArrayList實現了List的介面,實現了可變大小的陣列,隨機存取和遍歷元素時,提供更好的效能。該類也是非同步的,在多執行緒的情況下不要使用。ArrayList 增長當前長度的50%,插入刪除效率低。

常用方法總結

構建ArrayList

1.不初始化起容量

ArrayList al = new ArrayList();//預設容量為0,當陣列容量滿時陣列會自動一當前陣列容量的2倍擴容

2.初始化容量

ArrayList al = new ArrayList(3);//初始容量為3

3.以一個集合或陣列初始化

ArrayList al = new ArrayList(a);//a為集合或陣列

新增元素

//1.ArrayList名.add(object value)
ArrayList al = new ArrayList();
al.add("a");
//2.將元素插入到索引處(不過其有一定的限制性,必須在陣列長度以內插入陣列)
al.insert(int index,object value);

刪除元素

al.Remove(object obj);//移除陣列中的obj元素
al.RemoveAt(int index);//移除索引為index的數位元素
al.RemoveRange(int indext,int count);//移除從索引index開始,移除count個元素

查詢元素

查詢元素有Contains()、IndexOf()、LastIndexOf()3中方法

//boolean contains(Object o)
al.Contains(object obj);//查詢陣列中是否有obj元素,返回型別為boolean存在返回true;

IndexOf()有兩個過載方法 起用法如下:

//int indexOf(Object o)
al.IndexOf(object obj);//從0開始查詢obj元素,只第一個obj元素,並返回起在陣列中的位置,如果不存在,返回-1;
al.IndexOf(object obj, int startIndex); //從startIndex開始查詢obj元素,只第一個obj元素,並返回起在陣列中的位置,
al.IndexOf(object obj, int startIndex, int count); //從startIndex開始想後查詢count個元素,如果存在obj元素,則返回其在陣列中的位置

al.LastIndexOf()方法與IndexOf()用法相同,它也有兩個過載,其不同的是,LastIndexOf(obj)是查詢要obj最後出現的位置

獲取元素

al.get(index);

獲取ArrayList陣列長度

al.size();

檢查是否為空

//boolean isEmpty()
al.isEmpty();

遍歷ArrayList

1.獲取陣列長度,迴圈遍歷

for(int i = 0, i < al.size(); i++){
}

2.使用for-each迴圈

for(object e : al){
}

以上為個人經驗,希望能給大家一個參考,也希望大家多多支援it145.com。


IT145.com E-mail:sddin#qq.com