日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

集合(Collection和Map)

發(fā)布時(shí)間:2024/4/14 编程问答 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 集合(Collection和Map) 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

Hash(散列函數(shù))

Hash,一般翻譯做散列、雜湊,或音譯為哈希,是把任意長度的輸入通過散列算法變換成固定長度的輸出,該輸出就是散列值。這種轉(zhuǎn)換是一種壓縮映射,也就是,散列值的空間通常遠(yuǎn)小于輸入的空間,不同的輸入可能會(huì)散列成相同的輸出,所以不可能從散列值來確定唯一的輸入值。簡單的說就是一種將任意長度的消息壓縮到某一固定長度的消息摘要的函數(shù)。

Collection

單列集合的根接口,用于存儲(chǔ)一系列符合某種規(guī)則的元素

List:元素有序、可重復(fù)

ArrayList:

是List接口的一個(gè)實(shí)現(xiàn)類。在ArrayList內(nèi)部封裝了一個(gè)長度可變的數(shù)組對象,當(dāng)存入的元素超過數(shù)組長度時(shí),ArrayList會(huì)在內(nèi)存中分配一個(gè)更大的數(shù)組來存儲(chǔ)這些元素。

正是由于ArrayList內(nèi)部的數(shù)據(jù)存儲(chǔ)結(jié)構(gòu)是數(shù)組形式,在增加或指定位置的元素時(shí),會(huì)創(chuàng)建新的數(shù)組,效率比較低,因此不適合做大量的增刪操作

ArrayList list = new ArrayList(); list.add("stu1");

LinkedList:

該集合內(nèi)部包含有兩個(gè)Node類型的first和lastshuxing1維護(hù)一個(gè)雙向循環(huán)鏈表。

Set:元素?zé)o序、不可重復(fù)

HashSet集合

該集合存儲(chǔ)的元素使不可重復(fù)的,并且元素都是無序的。當(dāng)向HashSet集合添加一個(gè)元素時(shí),首先會(huì)調(diào)用該元素的hashCode()方法來確認(rèn)元素的存儲(chǔ)位置,然后再調(diào)用元素對象equals()方法來確保該位置沒有重復(fù)元素。

TreeSet

該集合元素不可重復(fù),并且可以對元素進(jìn)行排序

Map

雙列集合的根接口,用于存儲(chǔ)具有鍵(Key)、值(Value)映射關(guān)系的元素。

HashMap集合

鍵不能重復(fù),且集合中的元素是無序的,其子類LinkedHashMap有序

TreeMap

總結(jié)

以上是生活随笔為你收集整理的集合(Collection和Map)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。