最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

java?Collection集合接口的介紹和使用詳解

 更新時(shí)間:2023年07月04日 10:50:53   作者:adminwk  
這篇文章主要為大家介紹了java?Collection集合接口的介紹和使用示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪

一.關(guān)于Collection接口的繼承關(guān)系圖

Collection接口有兩個(gè)重要的子接口:List,Set。

List接口的三個(gè)重要的實(shí)現(xiàn)類(lèi):LinkedList,ArrayList,Vector

Set接口兩個(gè)重要的實(shí)現(xiàn)類(lèi):HashSet,TreeSet

二.Collection接口的實(shí)現(xiàn)類(lèi)的特點(diǎn)

1.Collection實(shí)現(xiàn)類(lèi),可以存放多個(gè)元素,每個(gè)元素可以是Object或子類(lèi)

2.有些Collection實(shí)現(xiàn)類(lèi),可以存放重復(fù)的元素,有些不可以

3.有些Collection實(shí)現(xiàn)類(lèi),有些是有序的(List),有些是無(wú)序的(Set)

4.Collection接口沒(méi)有直接實(shí)現(xiàn)類(lèi),是通過(guò)它的子接口Set和List來(lái)實(shí)現(xiàn)的

三.Collection接口的常用方法

由于Collection接口無(wú)法實(shí)例化,要想使用Collection接口的方法我們就用Collection的實(shí)現(xiàn)子類(lèi)ArrayList來(lái)演示它的常用方法

1.add:添加單個(gè)元素

(里面存的是一個(gè)個(gè)對(duì)象,并不是基本數(shù)據(jù)類(lèi)型,底層會(huì)自動(dòng)裝箱。并且添加成功返回true,添加失敗返回false)

public static void main(String[] args) {
        Collection collection = new ArrayList<>();
        //add方法的使用
       boolean b = collection.add("jack");
       System.out.println(b);//輸出結(jié)果:true
       collection.add(10);
       collection.add(true);
       System.out.println("List="+collection);//輸出結(jié)果:List=[jack, 10, true]
    }

2.remove:刪除指定元素

(如果按元素刪除返回值就是boolean類(lèi)型即刪除成功就放回true,刪除失敗就放回false。如果按照索引刪除返回值就是刪除的元素)

public static void main(String[] args) {
        List list = new ArrayList<>();
        list.add("jack");
        list.add(10);
        list.add(true);
        //remove:方法的使用
        //按照索引刪除(索引不存在就報(bào)錯(cuò))
        Object o = list.remove(1);
        System.out.println(o); //輸出結(jié)果:10
        //按照元素刪除
        boolean b = list.remove(true);
        System.out.println(b);//輸出結(jié)果:true
        System.out.println("List="+list);//輸出結(jié)果:List=[jack]
    }

3.contains:查找元素是否存在

(返回類(lèi)型是boolean類(lèi)型:如果元素存在就返回true,不存在就返回false)

public static void main(String[] args) {
        List list = new ArrayList<>();
        list.add("jack");
        list.add(10);
        list.add(true);
        //contains:方法的使用
        boolean b = list.contains("jack");
        System.out.println(b);//輸出結(jié)果:true
    }

4.size:獲取元素的個(gè)數(shù)

public static void main(String[] args) {
        List list = new ArrayList<>();
        list.add("jack");
        list.add(10);
        list.add(true);
        //size:方法的使用
        int s = list.size();
        System.out.println(s);//輸出結(jié)果:3
   }

5.isEmpty:判斷此集合是否為空

(如果此集合為空返回true,不為空返回false)

public static void main(String[] args) {
        List list = new ArrayList<>();
        list.add("jack");
        list.add(10);
        list.add(true);
        //isEmpty:方法的使用
        boolean b = list.isEmpty();
        System.out.println(b);//輸出結(jié)果:false
    }

6.clear:清空集合

public static void main(String[] args) {
        List list = new ArrayList<>();
        list.add("jack");
        list.add(10);
        list.add(true);
        //clear:清空集合
        list.clear();
        System.out.println("List="+list);//輸出結(jié)果:List=[]
    }

7.addAll:添加多個(gè)元素

(添加成功返回true,添加失敗返回false。只要是實(shí)現(xiàn)Collection接口的子類(lèi)都可以傳入addAll方法中)

public static void main(String[] args) {
        List list = new ArrayList<>();
        list.add("jack");
        list.add(10);
        list.add(true);
        //addAll:方法的使用
        List newList = new ArrayList<>();
        newList.add("西游記");
        newList.add("三國(guó)演繹");
        boolean b = list.addAll(newList);
        System.out.println(b);//輸出結(jié)果:true
        System.out.println("list="+list);//輸出結(jié)果:list=[jack, 10, true, 西游記, 三國(guó)演繹]
    }

8.containsAll:查找多個(gè)元素是否存在

(如果元素多存在就返回true,否則返回false。只要是實(shí)現(xiàn)Collection接口的子類(lèi)都可以傳入containsAll方法中)

public static void main(String[] args) {
        List list = new ArrayList<>();
        list.add("jack");
        list.add(10);
        list.add(true);
        //containsAll:方法的使用
        List newList = new ArrayList<>();
        newList.add("jack");
        newList.add(10);
        boolean b = list.containsAll(newList);
        System.out.println(b);//輸出結(jié)果:true
    }

9.removeAll:刪除多個(gè)元素

(如果刪除成功就返回true,否則就返回false。只要是實(shí)現(xiàn)Collection接口的子類(lèi)都可以傳入removeAll方法中)

public static void main(String[] args) {
        List list = new ArrayList<>();
        list.add("jack");
        list.add(10);
        list.add(true);
        //removeAll:方法的使用
        List newList = new ArrayList<>();
        newList.add("jack");
        newList.add(true);
        boolean b = list.removeAll(newList);
        System.out.println(b);
        System.out.println("list="+list);
    }

四.Collection接口遍歷元素的方式

1.使用迭代器遍歷(Iterator)

- 迭代器的基本介紹

1).Iterator對(duì)象稱(chēng)為迭代器,主要用于遍歷Collection集合中的元素

2).所有實(shí)現(xiàn)Collection接口的的集合類(lèi)都有一個(gè)iterator()方法,用以返回一個(gè)實(shí)現(xiàn)Iterator接口的對(duì)象,即可以返回一個(gè)迭代器3).Iterator僅用于遍歷集合,Iterator本身并不存放對(duì)象

- 迭代器的執(zhí)行原理

1).通過(guò)Collection接口實(shí)現(xiàn)類(lèi)的iterator()方法得到一集合的迭代器(Iterator)

Iterator iterator = list.iterator();

2).通過(guò)迭代器(Iterator)里的hasNext()方法判斷集合是否有下一個(gè)元素,如果有返回true,否則返回false

while (iterator.hasNext()){
            System.out.println(iterator.next());
        }

3).通過(guò)迭代器(Iterator)里的next()方法返回指針下移后集合位置上的元素(next()方法作用是指針下移并且返回下移后集合位置上的元素)4).原理圖

5).代碼演示

public static void main(String[] args) {
        List list = new ArrayList<>();
        list.add("jack");
        list.add(10);
        list.add(true);
        //使用迭代器遍歷集合
        //1.先得到list集合的迭代器(Iterator)
        Iterator iterator = list.iterator();
        //2.使用while循環(huán)遍歷
        while (iterator.hasNext()){
            //3.返回下一個(gè)元素
            Object o = iterator.next();
            System.out.println(o);//遍歷完最終輸出結(jié)果為:jack 10 true
        }
    }

2.使用增強(qiáng)for循環(huán)

增強(qiáng)for循環(huán)可以代替Iteratro迭代器。1).基本語(yǔ)法

for(元素類(lèi)型 元素名:集合名或數(shù)組名){
    訪(fǎng)問(wèn)元素
}

2).代碼演示

public static void main(String[] args) {
        List list = new ArrayList<>();
        list.add("jack");
        list.add(10);
        list.add(true);
        //使用增強(qiáng)for循環(huán)遍歷集合
        for (Object o :  list) {
            System.out.println(o);
        }
    }

3).特點(diǎn):曾強(qiáng)for循環(huán)就是簡(jiǎn)化版的Iterator迭代器,本質(zhì)一樣,只能用于遍歷集合或數(shù)組(上述代碼進(jìn)行Debug)

參考相關(guān)視頻(韓順平老師)

以上就是java Collection集合接口的介紹和使用詳解的詳細(xì)內(nèi)容,更多關(guān)于java Collection集合接口的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

最新評(píng)論

成安县| 江安县| 保靖县| 恭城| 贺兰县| 呈贡县| 恩平市| 乌拉特中旗| 烟台市| 呈贡县| 吉隆县| 通化县| 麻江县| 维西| 恩施市| 河源市| 白沙| 锡林郭勒盟| 手游| 谷城县| 榆林市| 凤城市| 炎陵县| 昌都县| 镇安县| 柳江县| 阳山县| 方城县| 崇义县| 黎川县| 泰兴市| 高平市| 美姑县| 海晏县| 新和县| 昌都县| 伊金霍洛旗| 达日县| 盐津县| 黄石市| 天柱县|