1. 程式人生 > 其它 >java集合之集合概念

java集合之集合概念

一、集合的概念

  • 概念:物件的容器,定義了對多個物件進行操作的常用方法。可實現陣列的功能。
  • 集合和陣列的區別:
    • 陣列長度固定,集合長度不固定
    • 陣列可以儲存基本型別和引用型別,集合只能儲存引用型別

二、Collection體系集合

三、Collection父介面

  • 特點:代表一組任意型別的物件
  • 方法:
    • add(Object obj)//新增一個物件
    • addAll(Collection c)//將一個集合中的所有物件新增到此集合中
    • clear()//清空集合中的所有物件
    • contains(Object o)//檢查此集合中是否包含o物件
    • equals(Object o)//比較此集合是否與指定物件相等
    • isEmpty()//判斷此集合是否為空
    • remove(Object o)//移除此集合中的o物件
    • size()//返回集合中的元素個數
    • toArray()//把集合轉換為陣列

四、Collection的使用

  • 大體用法包括新增元素、刪除元素、遍歷元素、判斷

  • 迭代器是一種介面,方便進行遍歷,collection繼承了此介面,主要有三個方法,用迭代器迭代的過程中不能用collection中的remove方法來刪除元素,可能會丟擲異常ConcurrentModificationException(檢測到物件的併發修改,但不允許這種修改時,丟擲此異常)

public class CollectionDemo01 {
    /**
     *新增元素、刪除元素、遍歷元素、判斷
     * @param args
     */
    public static void main(String[] args) {
        Collection collection=new ArrayList();
        //新增元素
        collection.add("水果");
        collection.add(1);
        collection.add(5.2);
        collection.add(1);
        collection.add(1);
        System.out.println(collection.size());//5
        System.out.println(collection);//[水果, 1, 5.2, 1, 1]
        ArrayList arrayList = new ArrayList();
        arrayList.add(1);
        //刪除元素
        collection.remove(1);//刪除單個元素,如有多個,從左開始刪除
        System.out.println(collection.size());//4
        System.out.println(collection);//[水果, 5.2, 1, 1]
        collection.removeAll(arrayList);//刪除傳入集合中包含的所有元素
        System.out.println(collection.size());//2
        System.out.println(collection);//[水果, 5.2]
        collection.clear();//清空
        System.out.println(collection.size());//0
        System.out.println(collection);//[]
        Collection collection2=new ArrayList();
        collection2.add("狗");
        collection2.add("貓");
        collection2.add("鳥");
        System.out.println("----------foreach遍歷----------");
        //遍歷元素方法1:foreach(不能用for,因為沒有下標)
        for (Object obj : collection2) {
            System.out.println(obj);
        }
        System.out.println("----------跌代器Iterator遍歷----------");
        //遍歷元素方法1:foreach(不能用for,因為沒有下標)
        Iterator iterator = collection2.iterator();
        while(iterator.hasNext()){
            Object next = iterator.next();
            System.out.println(next);
            iterator.remove();//遍歷時刪除,刪除後遊標自動縮
        }
        System.out.println(collection2.size());//0
        //判斷無素
        Collection collection3=new ArrayList();
        collection3.add("狗");
        collection3.add("貓");
        collection3.add("鳥");
        System.out.println(collection3.contains("鳥"));//true
        System.out.println(collection3.contains("小"));//false
        System.out.println(collection3.isEmpty());//false
        collection3.clear();
        System.out.println(collection3.isEmpty());//true
    }
}

本文來自部落格園,作者:一隻快樂的小67,轉載請註明原文連結:https://www.cnblogs.com/sp520/p/15934835.html