国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Collection接口和常用方法

這篇具有很好參考價值的文章主要介紹了Collection接口和常用方法。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報違法"按鈕提交疑問。

Collection接口和常用方法

一、Collection接口實(shí)現(xiàn)類的特點(diǎn)

public interface Collection extends Iterable

Collection接口和常用方法

  1. Collection實(shí)現(xiàn)子類可以存放多個元素,每個元素可以是Object。
  2. 有些Collection的實(shí)現(xiàn)類,可以存放重復(fù)的元素,有些不可以。
  3. 有些Collection的實(shí)現(xiàn)類,有些是有序的(如:List),有些不是有序的(如:Set)。
  4. Collection接口沒有直接的實(shí)現(xiàn)子類,是通過它的子接口Set 和 List來實(shí)現(xiàn)的。

二、常用方法

  1. add:添加單個元素
  2. remove:刪除指定元素
  3. contains:查找元素是否存在
  4. size:獲取元素個數(shù)
  5. isEmpty:判斷是否為空
  6. clear:清空
  7. addAll:添加多個元素
  8. containsAll:查找多個元素是否都存在
  9. removeAll:刪除多個元素
//代碼演示:
import java.util.ArrayList;
import java.util.List;

/**
 * @author
 * @version 1.0
 */
public class CollectionMethod {
    @SuppressWarnings({"all"})
    public static void main(String[] args) {
        //Collecton接口常用方法,以實(shí)現(xiàn)子類ArrayList來演示

        List list = new ArrayList();
//      add:添加單個元素
        list.add("jack");
        list.add("Tom");
        list.add(10);//有自動裝箱的過程,相當(dāng)于list.add(new Integer(10));
        list.add(true);
        System.out.println("list = " + list);

//      remove:刪除指定元素
        list.remove(0);//刪除第一個元素
        System.out.println(list.remove(true));//返回是否刪除成功
        System.out.println("list = "+list);

//      contains:查找元素是否存在
        System.out.println(list.contains("Tom"));

//      size:獲取元素個數(shù)
        System.out.println(list.size());

//      isEmpty:判斷集合是否為空
        System.out.println(list.isEmpty());

//      clear:清空集合
        list.clear();
        System.out.println("list = " + list);

//      addAll:添加多個元素,實(shí)現(xiàn)了Collection接口的類的對象都可以傳入
        ArrayList list2 = new ArrayList();
        list2.add("紅樓夢");
        list2.add("三國演義");
        list.addAll(list2);
        System.out.println("list = "+ list);

//      containsAll:查找多個元素是否都存在
        System.out.println(list.containsAll(list2));

//      removeAll:刪除多個元素
        list.add("聊齋");
        list.removeAll(list2);
        System.out.println("list = " + list);
    }
}

/*
	運(yùn)行結(jié)果:
	list = [jack, Tom, 10, true]
	true
	list = [Tom, 10]
	true
	2
	false
	list = []
	list = [紅樓夢, 三國演義]
	true
	list = [聊齋]
*/

三、Collection接口遍歷元素方式1 —— 使用 iterator(迭代器)

  • 基本介紹:

    Collection接口和常用方法

  1. Iterator對象稱為迭代器,主要用于遍歷 Collection 集合中的元素。
  2. 所有實(shí)現(xiàn)了 Collection 接口的集合類都有都有一個 iterator() 方法,用以返回一個實(shí)現(xiàn)了 Iterator接口的對象,即可以返回一個迭代器。
  3. Iterator 僅用于遍歷集合,Iterator 本身并不存放對象。
  4. Iterator的結(jié)構(gòu):
    • 迭代器的執(zhí)行原理:

      Iterator iterator = coll.iterator();//得到一個集合的迭代器
      while (iterator.hasNext()) {
      	//hasNext():判斷是否還有下一個元素;
      	System.out.println(iterator.next());
      	//next()作用:1. 下移 2. 將下移以后集合位置上的元素返回
      }
      

      Collection接口和常用方法

    • Iterator接口的方法

      Collection接口和常用方法

      Collection接口和常用方法

      注意:在調(diào)用 it.next()方法前必須要調(diào)用 it.hasNext() 進(jìn)行檢測。若不調(diào)用,且下一條記錄無效,直接調(diào)用 it.next() 會拋出 NoSuchElementException異常。

  • 代碼演示:

    import java.util.ArrayList;
    import java.util.Collection;
    import java.util.Iterator;
    
    /**
     * @author
     * @version 1.0
     */
    public class CollectionIterator {
        @SuppressWarnings({"all"})
        public static void main(String[] args) {
    
            //Collection接口遍歷對象方式1:迭代器遍歷
    
            Collection col = new ArrayList();
    
            col.add(new Book("三國演義","羅貫中",10.1));
            col.add(new Book("紅樓夢","曹雪芹",20.1));
            col.add(new Book("西游記","吳承恩",30.1));
    
            //System.out.println(col);
            //現(xiàn)在希望能夠遍歷 col集合
            //1. 先得到 col 對應(yīng)的 迭代器
            Iterator iterator = col.iterator();
            //2. 使用 while循環(huán)遍歷
    //        while (iterator.hasNext()){//判斷是否還有數(shù)據(jù)
    //            //返回下一個元素,類型是Object
    //            Object obj = iterator.next();
    //            System.out.println(obj);
    //        }
            //這里有一個快捷鍵,可以快速生成 while循環(huán) =》itit
            //顯示所有快捷鍵的快捷鍵 ctrl + j
            //itit
            while (iterator.hasNext()) {
                Object next =  iterator.next();
                System.out.println(next);
            }
    
            //3. 當(dāng)退出while循環(huán)后,這時 iterator迭代器 指向了最后的元素
            //iterator.next();//這里再使用next()就會拋出異常java.util.NoSuchElementException
            //4. 如果希望再次遍歷,就需要重置iterator迭代器
            iterator = col.iterator();
            System.out.println("第二次遍歷");
            while (iterator.hasNext()) {
                Object obj = iterator.next();
                System.out.println(obj);
            }
        }
    }
    
    class Book{
        private String name;
        private String author;
        private double price;
    
        public Book(String name, String author, double price) {
            this.name = name;
            this.author = author;
            this.price = price;
        }
    
        @Override
        public String toString() {
            return "Book{" +
                    "name='" + name + '\'' +
                    ", author='" + author + '\'' +
                    ", price=" + price +
                    '}';
        }
    }
    
    /*
    	運(yùn)行結(jié)果:
    	Book{name='三國演義', author='羅貫中', price=10.1}
    	Book{name='紅樓夢', author='曹雪芹', price=20.1}
    	Book{name='西游記', author='吳承恩', price=30.1}
    	第二次遍歷
    	Book{name='三國演義', author='羅貫中', price=10.1}
    	Book{name='紅樓夢', author='曹雪芹', price=20.1}
    	Book{name='西游記', author='吳承恩', price=30.1}
    */
    

四、Collection接口遍歷元素方式2 —— for循環(huán)增強(qiáng)

增強(qiáng)for循環(huán),可以代替iterator迭代器。

特點(diǎn):增強(qiáng)for就是簡化版的iterator,本質(zhì)一樣,foreach的底層就是迭代器。只能用于遍歷集合或數(shù)組。

  • 基本語法:

    //for( 元素類型 元素名 : 集合名或數(shù)組名){
    //	訪問元素
    //}
    for (Object object : col){
    	System.out.println(object);
    }
    
  • 案例演示:文章來源地址http://www.zghlxwxcb.cn/news/detail-409848.html

    import java.util.ArrayList;
    import java.util.Collection;
    
    public class CollectionFor {
        @SuppressWarnings({"all"})
        public static void main(String[] args) {
            Collection col = new ArrayList();
    
            col.add(new Book("三國演義","羅貫中",10.1));
            col.add(new Book("紅樓夢","曹雪芹",20.1));
            col.add(new Book("西游記","吳承恩",30.1));
    
            //1. 使用增強(qiáng)for循環(huán),在Collection集合
            //2. 增強(qiáng)for,底層仍然是迭代器
            //3. 增強(qiáng)for可以理解成就是簡化版的迭代器
            for(Object book: col){
                System.out.println(book);
            }
            //增強(qiáng)for,也可以直接在數(shù)組使用
            int[] nums = {1,2,3,4,5,6};
            for (int i : nums){
                System.out.println(i);
            }
    
            //增強(qiáng)for 快捷鍵:I 或 col.for
    
        }
    }
    
    /*
    	運(yùn)行結(jié)果:
    	Book{name='三國演義', author='羅貫中', price=10.1}
    	Book{name='紅樓夢', author='曹雪芹', price=20.1}
    	Book{name='西游記', author='吳承恩', price=30.1}
    	1
    	2
    	3
    	4
    	5
    	6
    */
    

到了這里,關(guān)于Collection接口和常用方法的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請點(diǎn)擊違法舉報進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • Collection接口詳細(xì)介紹(上)

    Collection接口詳細(xì)介紹(上)

    前言: 本篇文章主要講解 Java中的Collection接口以及相關(guān)實(shí)現(xiàn)類 的知識。該專欄比較適合剛?cè)肟覬ava的小白以及準(zhǔn)備秋招的大佬閱讀。 如果文章有什么需要改進(jìn)的地方歡迎大佬提出,對大佬有幫助希望可以支持下哦~ 小威在此先感謝各位小伙伴兒了?? 以下正文開始 Java中的集合

    2024年02月11日
    瀏覽(23)
  • 容器——2.Collection 子接口之 List

    容器——2.Collection 子接口之 List

    ArrayList 是 List 的主要實(shí)現(xiàn)類,底層使用 Object[ ] 存儲,適用于頻繁的查找工作,線程不安全 ; Vector 是 List 的古老實(shí)現(xiàn)類,底層使用 Object[ ] 存儲,線程安全的。 是否保證線程安全: ArrayList 和 LinkedList 都是不同步的,也就是不保證線程安全; 底層數(shù)據(jù)結(jié)構(gòu): Arraylist 底層使

    2024年02月14日
    瀏覽(18)
  • 進(jìn)階JAVA篇- Collection 類的常用的API與 Collection 集合的遍歷方式

    進(jìn)階JAVA篇- Collection 類的常用的API與 Collection 集合的遍歷方式

    目錄 ? ? ? ? 1.0?Collection 類的說明 ? ? ? ? 1.1?Collection 類中的實(shí)例方法 ? ? ? ? 2.0?Collection 集合的遍歷方式(重點(diǎn)) ? ? ? ? 2.1 使用迭代器( Iterator )進(jìn)行遍歷 ? ? ? ? 2.2?使用增強(qiáng)型 for 循環(huán)進(jìn)行遍歷 ? ? ? ? 2.3?使用 Java 8的 Stream API 進(jìn)行遍歷(使用 Lambda 表達(dá)式進(jìn)

    2024年02月08日
    瀏覽(29)
  • 49天精通Java,第23天,Java集合,Collection接口,Iterator接口

    49天精通Java,第23天,Java集合,Collection接口,Iterator接口

    大家好,我是哪吒。 在Java類庫中,集合類的基類是Collection接口。

    2023年04月11日
    瀏覽(21)
  • Set 接口及其常用方法

    Set 接口是 Collection 接口的一個子接口,其主要特點(diǎn)如下: 不允許重復(fù)元素: Set 接口的實(shí)現(xiàn)類不會包含重復(fù)的元素。更正式地說,不包含任何一對使得 e1.equals(e2) 成立的元素 e1 和 e2 ,并且最多只能有一個 null 元素。當(dāng)嘗試添加重復(fù)元素時,添加操作將被忽略。 無序性: S

    2024年02月08日
    瀏覽(21)
  • List 接口及其常用方法

    List 接口是 Collection 接口的子接口,其主要特點(diǎn)如下: List 中元素有序,是按照元素的插入順序進(jìn)行排序的。每個元素都有一個與之關(guān)聯(lián)的整數(shù)型索引(索引從 0 開始),可以根據(jù)索引來訪問和操作元素,可以使用普通 for 循環(huán)遍歷。 List 中可以包含重復(fù)的元素。 下面的代碼

    2024年02月08日
    瀏覽(20)
  • 第12章_集合框架(Collection接口,Iterator接口,List,Set,Map,Collections工具類)

    第12章_集合框架(Collection接口,Iterator接口,List,Set,Map,Collections工具類)

    1.1 生活中的容器 1.2 數(shù)組的特點(diǎn)與弊端 一方面,面向?qū)ο笳Z言對事物的體現(xiàn)都是以對象的形式,為了方便對多個對象的操作,就要對對象進(jìn)行存儲。 另一方面,使用數(shù)組存儲對象方面具有 一些弊端 ,而Java 集合就像一種容器,可以 動態(tài)地 把多個對象的引用放入容器中。 數(shù)

    2024年01月25日
    瀏覽(38)
  • 接口測試及接口抓包常用測試工具和方法?

    接口測試及接口抓包常用測試工具和方法?

    作為測試領(lǐng)域中不可或缺的一環(huán),接口測試和抓包技術(shù)在軟件開發(fā)過程中扮演著至關(guān)重要的角色。不論你是新手還是有一些經(jīng)驗(yàn)的小伙伴,本篇文章都會為你詳細(xì)介紹接口測試的基本概念、常用測試工具和實(shí)際操作技巧,讓你輕松掌握這一技能。 接口測試:什么是接口?為什

    2024年02月12日
    瀏覽(24)
  • 【Java 集合框架API接口】Collection,List,Set,Map,Queue,Deque

    【Java 集合框架API接口】Collection,List,Set,Map,Queue,Deque

    博主: _LJaXi Or 東方幻想郷 專欄: Java | 從跨行業(yè)到跨平臺 開發(fā)工具: IntelliJ IDEA 2021.1.3 Java集合API提供了一組功能強(qiáng)大的數(shù)據(jù)結(jié)構(gòu)和算法, 具有以下作用( 簡述 ) 存儲和組織數(shù)據(jù) 提供高效的數(shù)據(jù)訪問和操作 實(shí)現(xiàn)算法和數(shù)據(jù)處理 提供線程安全性 支持泛型編程 java.util.Collection

    2024年02月12日
    瀏覽(32)
  • Java封裝Elasticsearch8常用接口方法(一)

    正文內(nèi)容均以elasticsearch8.1版本為例,小版本差距不大,可直接使用,后續(xù)均以es8代替elasticsearch8.1 elastic官網(wǎng)文檔:https://www.elastic.co/guide/en/elasticsearch/client/java-api-client/8.1/connecting.html 連接池基于commons.pool2所寫,網(wǎng)上已存在很多相關(guān)內(nèi)容,僅針對es8進(jìn)行微調(diào) EsClientPoolFactory.ja

    2024年02月12日
    瀏覽(20)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包