Set集合中的內容不按特定的順序排序袄膏,只是簡單添加對象,不能包含重復的對象
**Set集合由 set類和set接口實現(xiàn)類組成掺冠。 **
Set接口繼承Collection接口沉馆,因此包含了Collection的所有方法码党。
<br />
Set 接口常用實現(xiàn)類為:HashSet類 和 TreeSet類 。
- HashSet:無序斥黑,HashSet表實現(xiàn)Set接口揖盘,每個對象的元素存儲在Hash表中,當元素數(shù)量較多時锌奴,其訪問效率比線性列表快兽狭。
- LinkedHashSet: 插入順序,LinkedHashSet采用Hash表和鏈表相結合的結構存儲集合中的元素鹿蜀,即保證了元素的順序箕慧,又具有較高的存儲效率。
- TreeSet:自然排序茴恰,對象中元素按字典順序升序排序(根據(jù)Unicode編碼)颠焦。
Set,List琐簇,Map的常用方法
add(E) : boolean //將元素插入到集合的末尾
add(int ,E) : void //將元素插入到指定位置蒸健,無返回值
addAll(int,Collections<? extends E>) : boolean //將一個集合插入到當前集合指定位置
addAll(int,Collections<? extends E>) : boolean//將一個集合插入到當前集合末尾
clear() : void//清除當前集合中所有內容,無返回值
contains(Obj):boolean //判斷集合中是否包含指定元素
containsAll(Collection<?>) : boolean //判斷當前集合中是否包含指定集合
equals(Obj) : boolean //判斷集合是否相同
get(int) : E //取索引位置的元素
hashCode() : int // 返回對象的散列碼
indexOf(Obj) : int // 查找該元素在集合中第一次出現(xiàn)的索引婉商,如果不存在則返回-1
isEmpty() : boolean // 判斷集合是否為空
iterator() : Iterator<E> //返回一個迭代器
lastIndexOf(Obj) : int listIterator() :
ListIterator<E> listIterator( int ) :
ListIterator<E> remove(int) : E //刪除指定位置的元素似忧,返回該元素的值
removeAll(Collections<?>) : boolean //刪除當前集合中的所有指定集合中的元素(即刪除交集)
replaceAll(UnaryOperator<E>) : void
retainAll(Collection<?>):boolean //取當前集合與指定集合的交集,存入當前集合
set(int, E) : E // 將集合指定位置的元素設置為
E size() : int //返回集合中元素的個數(shù)
sort(Comparator<? super E>): void//將集合轉化為Array以后用Arrays類中的sort方法進行排序丈秩,把原集合覆蓋
spliterator() : Spliterator<E> // 調用Spliterator接口中的spliterator()方法盯捌,將集合分割后遍歷,可以多線程同時操作
subList(int, int):List<E> // 截取子集合
toArray():Object[] // 將集合轉化為Object類型的數(shù)組
toArray(T[]) : <T>:T[] // 將集合轉化為指定類型的數(shù)組