set集合整理

2021-06-22 16:50:18 字數 512 閱讀 6950

hashset:

雜湊表確定元素是否相同:

1)判斷的是兩個元素的雜湊值是否相同,如果相同,再判斷兩個物件的內容是否相同。

2)判斷雜湊值是否相同用的是物件的hashcode方法,判斷兩個物件的內容是否相同,用的是equals方法。

雜湊衝突:雜湊值相同,但是內容不同,解決方法時串聯或者順延。

treeset:

可以對集合中的元素進行自然排序。

在treeset中,判斷元素唯一性的方法是,根據compare比較方法,返回結果是0,則元素相同,不存。

treeset對元素進行排序的方式一:

讓元素自身具備比較功能,元素需要實現comparable類,覆蓋compareto方法;

treeset對元素進行排序的方式二:

讓集合自身具備比較功能,通過comparator比較器,在集合物件建立過程中傳入乙個自定義比較器。

定義乙個類實現comparator介面,覆蓋compare方法,將該類物件作為引數傳遞給treeset集合的構造方法。

Collection集合 (set集合)

不包含重複元素的集合 即使新增重複元素之後,最終也只能顯示乙個 沒有帶索引的方法,所以不能使用普通的for迴圈遍歷 hashset 對集合的迭代順序不作任何保證 object類中有乙個方法可以獲取物件的雜湊值 public int hashcode 返回物件的雜湊碼值 物件的雜湊值特點 同乙個物件多...

List集合 Set集合

一 請簡述list介面的特點。v 它是乙個元素訪問有序的集合。例如,存元素的順序是11 22 33。那麼集合中,元素的儲存就是按照11 22 33的順序完成的 v 它是乙個帶有索引的集合,通過索引就可以精確的操作集合中的元素 與陣列的索引是乙個道理 v 集合中可以有重複的元素,通過元素的equals...

set 集合容器

簡單學習一下set集合容器 標頭檔案 include using namespace std sets 必須是有定義 運算子的型別 int,string 向s中加資料 s.insert elem 插入elem之後元素預設按公升序排序,集合中是沒有重複元素的,每個不同的元素只存乙個 s.clear 清...