collection中的常用功能(arraylist,linkedlist,hashset,treeset)
boolean add(object e): 向集合中新增元素
void clear():清空集合中所有元素
boolean contains(object o):判斷集合中是否包含某個元素
boolean isempty():判斷集合中的元素是否為空
boolean remove(object o):根據元素的內容來刪除某個元素
int size():獲取集合的長度
object toarray():能夠將集合轉換成陣列並把集合中的元素儲存到陣列中
迭代器遍歷集合
iterator iterator = list.iterator();
while (iterator.hasnext())
lambada表示式b格更高
linkedlist特有功能
linkedlist底層使用的是鍊錶結構,因此增刪快,查詢相對arraylist較慢
void addfirst(e e) :向鍊錶的頭部新增元素
void addlast(e e):向鍊錶的尾部新增元素
e getfirst():獲取鏈頭的元素,不刪除元素
e getlast():獲取鏈尾的元素,不刪除元素
e removefirst():返回鏈頭的元素並刪除鏈頭的元素
e removelast():返回鏈尾的元素並刪除鏈尾的元素
特殊記兩個不一樣的
queue jdk用linkedlist實現了(先進先出)
queue queue = new linkedlist<>();
boolean offer(e e);入隊操作
poll(); 出隊
stack 棧 (先進後出)
e push(e item)入棧
synchronized e pop() 出棧
synchronized int size() 元素個數
boolean isempty() 是否為空
synchronized e peek() 檢視棧頂元素(不出棧只檢視)
如果要從棧頂->棧底檢視元素需要
for(int i = stack.size()-1;i>=0;i--)
system.out.println(stack.get(i));
collections工具類中常用方法:
static void swap(list list, int i, int j) :將指定列表中的兩個索引進行位置互換
static void sort(listlist) :按照列表中元素的自然順序進行排序
static void shuffle(list list):隨機置換
static void reverse(list list); 反轉
static void copy(list dest, list src) :是把源列表中的資料覆蓋到目標列表 注意:目標列表的長度至少等於源列表的長度
static int binarysearch(list list, object key) 使用二分查詢法查詢指定元素在指定列表的索引位置
map常用功能
a:對映功能:
v put(k key, v value) :以鍵=值的方式存入map集合
b:獲取功能:
v get(object key):根據鍵獲取值
int size():返回map中鍵值對的個數
c:判斷功能:
boolean containskey(object key):判斷map集合中是否包含鍵為key的鍵值對
boolean containsvalue(object value):判斷map集合中是否包含值為value鍵值對
boolean isempty():判斷map集合中是否沒有任何鍵值對
d:刪除功能:
void clear():清空map集合中所有的鍵值對
v remove(object key):根據鍵值刪除map中鍵值對
e:遍歷功能:
set> entryset():將每個鍵值對封裝到乙個個entry物件中,再把所有entry的物件封裝到set集合中返回
setkeyset() :將map中所有的鍵裝到set集合中返回
collectionvalues():返回集合中所有的value的值的集合
遍歷map
setset =map.keyset();
for(string s: set)
system.out.println(s+","+map.get(s));
set> entry = map.entryset();
for(map.entryentry1:entry)
system.out.println(entry1.getkey()+","+entry1.getvalue());
java集合筆記
1 儲存物件 陣列和集合 陣列儲存物件的弊端 1.一旦建立,其大小不可變。2 陣列存放的物件個數是不可知的。2 collection介面 子介面 a set 無序性 不可重複的元素 hashset,linkedhashset,treeset b list 有序性 可以重複的元素 arraylist ...
java 集合筆記
常用 arraylist子類,vector子類 區別 arraylist是非同步處理,效能高,但是執行緒不安全。vector是同步處理,效能低,但是執行緒安全 用法都一樣。與list介面區別是不能加入重複的元素。常用 hashset子類,treeset子類 hashset 無順序存放。treeset...
Java筆記 集合
hashset內部的資料結構是雜湊表。在儲存元素時,要使用hashcode方法確定位置。如果位置相同,再根據元素的equals來確定是否相同。注 在string中,複寫了equals方法,比較的是字串的內容。override public int hashcode override public b...