傳智部落格JAVA基礎第十九天

2021-06-10 03:03:59 字數 1266 閱讀 9494

集合框架的圖:

collection

|--list 元素有序,可重複。

|--arraylist

底層資料結構是陣列,查詢快,增刪慢。

執行緒不安全。

|--vector

底層資料結構是陣列,查詢快,增刪慢。

執行緒安全,所以,查詢也慢。

|--linkedlist

底層資料結構是鍊錶,查詢慢,增刪快。

執行緒不安全。

|--set 元素無序,不可重複。

|--hashset

底層資料結構是雜湊表。是用於保證元素的唯一性的。

如何保證的呢?是根據hashcode和equals方法。

當hashcode不同的時候,就把元素存入集合。

當hashcode相同的時候,就要進一步比較equals方法。

當equals方法返回true的時候,元素被認為是重複,不儲存。

當equals方法返回false的時候,元素儲存。

|--linkedhashset

底層資料結構是雜湊表和煉表。

鍊錶用於保證元素有序。

雜湊表用於保證元素唯一。

|--treeset

底層資料結構是二叉樹。是用於保證元素的排序的。預設是按照自然排序。

treeset儲存資料是如何保證元素的唯一性的呢?

是根據comparable或者comparator的返回值是0.就認為是同乙個元素。

treeset儲存自定義物件的時候,讓元素可以排序,有兩種方式:

實現comparable介面:讓元素本身具備比較性

實現comparator介面:讓集合本身具備比較性

iterator 迭代器

|--listiterator list集合的特有迭代器

treeset的比較性可以有下面兩種方式體現:

comparable:讓元素本身具備比較性

comparator:讓集合本身具備比較性

學習集合框架的重點方法:

新增元素

刪除元素

判斷遍歷元素

用arraylist,hashset分別儲存自定義元素。

並可以用於根據自己的需求來確定元素是否唯一。

總結:array:資料結構是陣列。查詢快,增刪慢

link:資料結構是鍊錶,查詢慢,增刪快

hash:資料結構是雜湊表。保證元素唯一是根據hashcode和equals

tree:資料結構是二叉樹。保證元素唯一是根據comparable和comparator的返回值是否是0.

冥想第十九天

不能怪自己多心,畢竟出現不舒服的感覺是因為大腦太關切自己的身體了。一點也不想讓它受刺激。今天出來玩了,早上做了體檢。又帶著小妞妞出來打了預防針,後又跟著朋友出來滎陽南嶺玩了,到時有點困,告訴自己要接受,好好接受當下 但不反抗,知道是正常的。坐上車後睡了一會,所有的精力都回來了。當和朋友一起回來的時候...

ACM 第十九天

積性函式o n 線性篩,篩素數,u n 尤拉函式 n n 1 vis 0 vis 1 1,mu 1 1,phi 1 1 2 for rg int i 2 i n i 7else mu k mu i phi k phi i phi prime j 8 9 可以發現,線性篩分為3部分 1.n本身是素數,...

PYTHON小白 第十九天

python小白 第十九天 1 異常概述 異常機制己經成為衡量一門程式語言是否成熟的標準之一,使用異常處理機制的python程式有更好的容錯性,更加健壯。2 異常處理機制 python的異常處理機制可以讓程式具有極好的容錯性,讓程式更加健壯。當程式執行出現意外情況時,系統會自動生成error物件來通...