private void initmap()log.d(tag, map.tostring());
log.d(tag, weakmap.tostring());
log.d(tag, treemap.tostring());
log.d(tag, hamap.tostring());
log.d(tag, linkmap.tostring());
/用keyset()遍歷
for (string key : map.keyset())
///用entryset()遍歷
for (map.entryentry : map.entryset())
//用keyset()遍歷
iteratoriterator = map.keyset().iterator();
while (iterator.hasnext())
//用entryset()遍歷
iterator> iterator1 = map.entryset().iterator();
while (iterator1.hasnext())
//增強for迴圈使用方便,但效能較差,不適合處理超大量級的資料。
////迭代器的遍歷速度要比增強for迴圈快很多,是增強for迴圈的2倍左右。
////使用entryset遍歷的速度要比keyset快很多,是keyset的1.5倍左右。
//map 按照value 排序
// 通過arraylist建構函式把map.entryset()轉換成list
list> list = new arraylist>(map.entryset());
// 通過比較器實現比較排序
collections.sort(list, new comparator>()
});for (string key : map.keyset())
}private void initvector()
strin**ector.add("sss");
log.d(tag, strin**ector.tostring());
//這種方式最快
for (int i=0; i();
for (int i= 0;i<15;i++)
log.d(tag, stringstack.tostring());
}private void initset()
integerset.add(111);
stringset.add("sss");
stringset.add("ssssss1");
stringset1.add("ajack");
log.d(tag, stringset.tostring());
log.d(tag, integerset.tostring());
log.d(tag, stringset1.tostring());
iteratoriterator = stringset.iterator();
while (iterator.hasnext())
}
Java資料結構
arraylist 基於 array,在記憶體中占有連續空間,所以get index 時候,根據陣列首位址 偏移量就可以取到值 linklist 基於link,在記憶體中不連續,每個元素只知道下乙個元素,所以get時候,只能從首元素開始乙個乙個去找,效率相對較慢 增加刪除 arraylist 需要變...
java資料結構 佇列
1.用鍊錶實現單向佇列 package com.jzm.stackqueuetree public class linkqueue end constructor private class node end constructor private t getdata private node ge...
java資料結構 堆
1.由於用陣列來模擬堆的資料存放比較方便,且陣列0號位置作為哨兵 package com.jzm.heapmap public class maxheap public maxheap int size end constructor public boolean isempty 判斷是否為空 pu...