原
集合的兩個頂級介面分別為:collection和map
collection下有兩個比較常用的介面分別是list(列表)和set(集),其中list可以儲存重複元素,元素是有序的(訪問順序一致),可以通過list腳標來獲取指定元素;而set不可以有重複元素,元素是無序的。
list介面中,比較常用的類有三個:arraylist、vactor、linkedlist。
arraylist :執行緒不安全的,對元素的查詢速度快。
vector :執行緒安全的,多了一種取出元素的方式:列舉(enumeration),但已被arraylist取代。
linkedlist :鍊錶結構,對元素的增刪速度很快。
set介面中,比較常用的類有兩個:hashset、treeset:
hashset:要保證元素唯一性,需要覆蓋掉object中的equals和hashcode方法(因為底層是通過這兩個方法來判斷兩個元素是否是同乙個)。
treeset:以二叉樹的結構對元素進行儲存,可以對元素進行排序。
排序的兩種方式:
1、元素自身具備比較功能,元素實現comparable介面,覆蓋compareto方法。
2、建立乙個比較器物件,該物件實現comparator介面,覆蓋compare方法,並將該物件作為引數傳給treeset的建構函式(可以用匿名內部類)。
map介面其特點是:元素是成對出現的,以鍵和值的形式體現出來,鍵要保證唯一性:常用類有:hashmap,hashtable ,treemap。
hashmap:執行緒不安全等的,允許存放null鍵null值。
hashtable:執行緒安全的,不允許存放null鍵null值。
treemap:可以對鍵進行排序(要實現排序方法同treeset)。
collection和map兩個介面對元素操作的區別:
存入元素:
collection介面下的實現類通過add方法來完成,而map下是通過put方法來完成。
取出元素:
collection介面下:list介面有兩種方式:1、get(腳標);2、通過iterator迭代方式獲取元素;而vactor多了一種列舉(enumeration)的方式。set介面通過迭代的方式獲取元素。
map介面下:先通地keyset獲取鍵的系列,然後通過該系列使用iterator迭代方式獲取元素值。
對list排序:
String類有哪些常用的方法
string類常用方法 1.string類長度 string沒有length的屬性,有length 這個方法,可以獲取字串的長度。可以求得字串s的長度,但是該長度會包含空格。2.indexof lastindexof 可以獲取指定字串的索引位置。indexof 返回的是首次搜尋字元出現的索引 las...
list集合的常用方法
1 對list去重 1 簡單的基本型別lista new arraylista.add 1 a.add 2 a.add 1 a a.stream distinct collect collectors.tolist a.foreach b system.out.println 2 一般物件去重lis...
你所知道的集合類有哪些?主要方法 ?
最常用的集合類是list和map。list的具體實現包括arraylist和vector,它們是可變大小的列表,比較適合構建,儲存和操作任何型別物件的元素列表,list適用於按索引訪問元素的元素是的情形。map提供了乙個更通用的元素儲存方法,map集合類適用於儲存元素對 稱作 鍵 和 值 其中每個鍵...