java对象是 什么的集合_java持有对象-集合类
面阿里的時(shí)候,面試就讓我說(shuō)一下集合 當(dāng)時(shí)由于條件原因沒(méi)聽(tīng)清面試官的問(wèn)題,后來(lái)面試后,面試官讓問(wèn)他問(wèn)題的時(shí)候,才說(shuō)明白是什么
下面就接受一下我了解的集合類
集合類中大致可以分為兩個(gè)體系
一、collection體系:?單一對(duì)象存取,即每個(gè)元素存儲(chǔ)單元內(nèi)只存儲(chǔ)一個(gè)對(duì)象實(shí)例;
二、map體系:雙對(duì)象存取即每個(gè)元素所占存儲(chǔ)單元內(nèi)存儲(chǔ)兩個(gè)對(duì)象實(shí)例(key-value)的形式。
下面將一一介紹collection系和map系的結(jié)構(gòu)。
一、collction:
他是一個(gè)集合接口,它提供了對(duì)集合對(duì)象進(jìn)行基本操作的通用接口方法。實(shí)現(xiàn)該接口的類主要有set和list.
list---ArrayList
Vector
LinkedList
set---TreeSet
HashSet
二、map
hashmap
treemap
hashtable
一、集合的使用步驟:
A、創(chuàng)建集合對(duì)象
B、創(chuàng)建元素對(duì)象
C、把元素添加到集合
D、遍歷集合:a、通過(guò)集合對(duì)象獲取迭代器對(duì)象
b、通過(guò)迭代器Iterator對(duì)象的hasNext()方法判斷是否有元素
c、通過(guò)迭代器對(duì)象的next()方法獲取元素并移動(dòng)到下一個(gè)位置
二、list和set的比較
List:用戶可根據(jù)索引訪問(wèn)元素,并搜索列表中的元素。元素有序,可重復(fù)
Set:元素?zé)o序,且可重復(fù)
三、list的三個(gè)子類的特點(diǎn)
ArrayList:底層數(shù)據(jù)結(jié)構(gòu)是數(shù)組,查詢快,增刪慢,線程不安全,效率高
Vector:底層數(shù)據(jù)結(jié)構(gòu)是數(shù)組,查詢快,增刪慢,線程安全,效率慢
Linkedlist:底層數(shù)據(jù)結(jié)構(gòu)是鏈表,查詢慢,增刪快,線程不安全,效率高
四、set的兩個(gè)子類特點(diǎn)
HashSet:其底層結(jié)構(gòu)是HashMap
TreeSet:其底層結(jié)構(gòu)是TreeMap和NavigableSet,其中NavigableSet是一個(gè)接口,TreeMap是其子實(shí)現(xiàn)類。
它可以使用元素的自然順序進(jìn)行排序,或者根據(jù)創(chuàng)建set時(shí)的Comparator 即比較器排序。
總結(jié)
以上是生活随笔為你收集整理的java对象是 什么的集合_java持有对象-集合类的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: java两个日期之间的日期_获取两个日期
- 下一篇: 用java写一个日历_2017.12.2