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

Java中Collection和Collections的區(qū)別

 更新時間:2024年04月15日 09:42:32   作者:Wangwq.  
Collection是一個集合接口,集合類的頂級接口,Collections是一個包裝類,本文主要介紹了Java中Collection和Collections的區(qū)別,具有一定的參考價值,感興趣的可以了解一下

java.util.Collection

是一個集合接口,集合類的頂級接口。它提供了對集合對象進行基本操作的通用接口方法。Collection接口在Java 類庫中有很多具體的實現(xiàn)。Collection接口的意義是為各種具體的集合提供了最大化的統(tǒng)一操作方式,其直接繼承接口有List與Set。

在這里插入圖片描述

Collection是最基本集合接口,它定義了一組允許重復(fù)的對象。Collection接口派生了兩個子接口Set和List,分別定義了兩種不同的存儲方式,如下

  • Set接口繼承于Collection接口,它沒有提供額外的方法,但實現(xiàn)了Set接口的集合類中的元素是無序且不可重復(fù)
  • List接口繼承于Collection接口,但是與Set接口恰恰相反,List接口的集合類中的元素是對象有序且可重復(fù)

List 接口有兩個重要的實現(xiàn)類 ArrayList 和 LinkedList

Map接口Map也是接口,但沒有繼承Collection接口。
該接口描述了從不重復(fù)的鍵到值的映射。Map接口用于維護鍵/值對(key/value)

Map接口有兩個重要的實現(xiàn)類:

  • HashMap:中文叫散列表,基于哈希表實現(xiàn),特點就是鍵值對的映射關(guān)系。一個key對應(yīng)一個Value。HashMap中元素的排列順序是不固定的。更加適合于對元素進行插入、刪除和定位。
  • TreeMap:基于紅黑樹實現(xiàn)。TreeMap中的元素保持著某種固定的順序。更加適合于對元素的順序遍歷。

Iterator接口Iterator接口,在C#里有例外一種說法IEnumerator,他們都是集合訪問器,用于循環(huán)訪問集合中的對象。 所有實現(xiàn)了Collection接口的容器類都有iterator方法,用于返回一個實現(xiàn)了Iterator接口的對象。Iterator對象稱作迭代器,Iterator接口方法能以迭代方式逐個訪問集合中各個元素,并可以從Collection中除去適當(dāng)?shù)脑亍?/p>

java.util.Collections

是一個包裝類(工具類/幫助類)。
它包含有各種有關(guān)集合操作的靜態(tài)多態(tài)方法。此類不能實例化,就像一個工具類,用于對集合中元素進行排序、搜索以及線程安全等各種操作,服務(wù)于Java的Collection框架。

Collections類里面包括動態(tài)、有序、可變大小的一維數(shù)組Vector與ArrayList。
兩者唯一的差別是:vector自帶線程互斥,多個線程對其讀寫會拋出異常,而arraylist則允許多個線程讀寫,其他部分是一模一樣的。

Vector的使用:

public static void Vectortest() {
	Vector<Object> vector = new Vector<Object>();
	vector.add(1.6);
	vector.add(2.06);
	vector.add(1);
	System.out.println("單純的add表示從結(jié)尾加入元素:" + vector);
	System.out.println("size()能求出vector的所含元素的個數(shù):" + vector.size());
	vector.remove(1);
	System.out.println("remove(1)表示刪去第1個元素,由于計數(shù)從0開始,也就是2.06這個元素:" + vector);
	vector.remove(vector.lastElement());
	System.out.println("刪去最后一個元素的vector為:" + vector);
	vector.add(0, 1.8888);
	System.out.println("在第0個位置加入1.8888這個元素:" + vector);
	vector.set(0, "a");
	System.out.println("把第0個位置這個元素改為a:" + vector);
}

從以上代碼中可以看出,vector 的各種操作更便捷。可以在任意位置插入元素,也可以不用遍歷數(shù)組就能夠用一個方法刪除指定位置的元素。

到此這篇關(guān)于Java中Collection和Collections的區(qū)別的文章就介紹到這了,更多相關(guān)Java Collection Collections內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • javaweb登錄驗證碼的實現(xiàn)方法

    javaweb登錄驗證碼的實現(xiàn)方法

    這篇文章主要為大家詳細介紹了javaweb登錄驗證碼的實現(xiàn)方法,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-11-11
  • 如何在mybatis中向BLOB字段批量插入數(shù)據(jù)

    如何在mybatis中向BLOB字段批量插入數(shù)據(jù)

    這篇文章主要介紹了如何在mybatis中向BLOB字段批量插入數(shù)據(jù)的相關(guān)知識,本文通過實例代碼給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友參考下吧
    2020-10-10
  • json轉(zhuǎn)換成java對象示例

    json轉(zhuǎn)換成java對象示例

    這篇文章主要介紹了json轉(zhuǎn)換成java對象示例,需要的朋友可以參考下
    2014-04-04
  • java線程間通信的通俗解釋及代碼示例

    java線程間通信的通俗解釋及代碼示例

    這篇文章主要介紹了java線程間通信的通俗解釋,介紹了線程通信中的幾個相關(guān)概念,然后分享了線程通信的實現(xiàn)方式及代碼示例,具有一定參考價值 ,需要的朋友可以了解下。
    2017-11-11
  • SpringWebMVC的常用注解及應(yīng)用分層架構(gòu)詳解

    SpringWebMVC的常用注解及應(yīng)用分層架構(gòu)詳解

    這篇文章主要介紹了SpringWebMVC的常用注解及應(yīng)用分層架構(gòu),SpringWebMVC是基于ServletAPI構(gòu)建的原始Web框架,從?開始就包含在Spring框架中,感興趣的朋友可以參考下
    2024-05-05
  • Java中Arrays.asList() 的不可變陷阱

    Java中Arrays.asList() 的不可變陷阱

    本文主要介紹了Arrays.asList()創(chuàng)建的集合不可變原因,指出其底層數(shù)組為final且未重寫修改方法,導(dǎo)致增刪拋異常,下面就來介紹一下Arrays.asList() 陷阱,感興趣的可以了解一下
    2025-06-06
  • Java連接MySQL8.0 JDBC的詳細步驟(IDEA版本)

    Java連接MySQL8.0 JDBC的詳細步驟(IDEA版本)

    這篇文章主要介紹了Java連接MySQL8.0 JDBC的詳細步驟(IDEA版本),本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-04-04
  • 修改Zookeeper的客戶端連接端口方式(默認2181端口)

    修改Zookeeper的客戶端連接端口方式(默認2181端口)

    本文介紹了Zookeeper配置文件zoo.cfg的基本配置和修改客戶端連接端口的方法,特別強調(diào)了server.x配置項中三個端口的含義,并給出修改后的zoo.cfg文件作為參考
    2026-04-04
  • 詳解IntelliJ IDEA 自帶的 HTTP Client 接口調(diào)用插件吊打 Postman

    詳解IntelliJ IDEA 自帶的 HTTP Client 接口調(diào)用插件吊打 Postman

    HTTP Client 是 IDEA 自帶的一款簡潔輕量級的接口調(diào)用插件,通過它,我們能在 IDEA 上開發(fā),調(diào)試,測試 RESTful Web 服務(wù),接下來通過本文給大家分享IntelliJ IDEA 自帶的 HTTP Client 接口調(diào)用插件吊打 Postman的知識,感興趣的朋友一起看看吧
    2021-05-05
  • MyBatis 中 SqlMapConfig 配置文件詳解

    MyBatis 中 SqlMapConfig 配置文件詳解

    這篇文章主要介紹了MyBatis 中 SqlMapConfig 配置文件詳解,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-10-10

最新評論

安多县| 清新县| 吴江市| 渝北区| 庆云县| 姚安县| 浦城县| 万宁市| 高尔夫| 额济纳旗| 留坝县| 东乡| 盱眙县| 梁山县| 湖南省| 广元市| 象州县| 汶川县| 会同县| 桑植县| 巫溪县| 潜江市| 汉川市| 平度市| 呼玛县| 汾阳市| 台南县| 通江县| 荣成市| 青浦区| 乌恰县| 彭州市| 海阳市| 科技| 榕江县| 原阳县| 株洲市| 定兴县| 永善县| 固始县| 乌审旗|