JAVA知識點總結 11 Set,Map

2021-07-31 14:38:07 字數 1271 閱讀 4862

一 hashset:

1.元素唯一,無序,不保證迭代順序永久不變

2. 元素的唯一性依靠重寫的hashcode和equals方法

3.string類中已經自動重寫了hashcod和equals方法,不用重寫

3. 執行流程:

首先判斷雜湊值是否相同,如果不同,就直接新增到集合。

如果相同,繼續執行equals(),看其返回值,

如果是false,就直接新增到集合。

如果是true,說明元素重複不新增。

二 treeset:

1.對於數字和字母的排序,是自動的

2.自然排序:類實現compareable()介面,重寫compareto()方法,建立treeset集合時不用傳參

3.比較器排序:不需要實現comparator介面,只要在新建treeset時時使用匿名內部類重寫compareto方法即可

4.hashset與treeset的相同點與不同點

相同點:

單列集合,元素不可重複

不同點:

1. 底層儲存的資料結構不同

hashset底層用的是hashmap雜湊表結構儲存,而treeset底層用的是treemap樹結構儲存

2.儲存時保證資料唯一性依據不同

hashset是通過複寫hashcode()方法和equals()方法來保證的,而treeset通過compareable介面的compareto()方法來保證的

3.有序性不一樣

hashset無序,treeset有序

三 map:

概念:  map,將鍵對映到值的物件,乙個對映不能包含重複的鍵,乙個鍵對映乙個值

1.新增功能: 

v put(k key,v value):集合新增鍵值對

2.長度功能: 

int size():鍵值對對數。

3.通過鍵值遍歷

4.通過獲取鍵值對的物件遍歷,getkey, getvalue

.hashmap與treemap的相同點與不同點

相同點:主要用於儲存鍵(key)值(value)對,根據鍵得到值,因此鍵不允許鍵重複,但允許值重複。

不同點:

1.hashmap裡面存入的鍵值對在取出的時候是隨機的,也是我們最常用的乙個map.根據鍵可以直接獲取它的值,

具有很快的訪問速度。在map 中插入、刪除和定位元素,hashmap 是最好的選擇。  

2.treemap取出來的是排序後的鍵值對。但如果您要按自然順序或自定義順序遍歷鍵,那麼

treemap

會更好。

Java集合知識點總結

list有序且允許元素重複。map也屬於集合系統,但和collection介面沒關係。map是key對value的對映集合,其中key列就是乙個集合。key不能重複,但是value可以重複。sortedset和sortedmap介面對元素按指定規則排序,sortedmap是對key列進行排序。has...

java多型知識點總結

多型 一種事物有多種表現形式。物件導向的最後乙個特徵,繼承和封裝都是為多型打基礎!生活中的多型 打招呼 中國人 你好 英國人 hello 日本人 拷逆七娃 南韓人 阿娘哈賽you 泰國人 薩瓦迪卡 1 方法的多型性 方法的重寫和過載 2 物件的多型性 物件的轉型上!person p new stud...

JAVA知識點總結(七)多型

多型 可以理解為事物存在的多種體現形態 人 男人,女人 動物 貓,狗 貓 x new 貓 動物 x new 貓 動物貓,狗 1.多型的體現 父類的引用指向了自己子類的物件 父類的引用也可以接收自己子類的物件 2.多型的前提 必須是類與類之間的關係,要麼繼承,要麼實現 3.多型的好處 多型的出現大大的...