1. 保持放入元素先后的顺序不变化:
import java.util.LinkedHashMap;
import java.util.Map;
public class TestLinkedMap {
public static void main(String[] args) {
Map map = new LinkedHashMap();
for (int i = 0; i < 10; i++) {
map.put("key" + i, "value" + i);
}
map.get("key" + 5);
for (String value : map.keySet()) {
System.out.println(value);
}
}
}
结果是:
key0
key1
key2
key3
key4
key5
key6
key7
key8
key9
2. 查询时,把最新查出来的元素放在末位(很奇怪,为什么不是把查询出来的元素放在首位)import java.util.LinkedHashMap;
import java.util.Map;
public class TestLinkedMap {
public static void main(String[] args) {
Map map = new LinkedHashMap(16, 0.75f, true);
for (int i = 0; i < 10; i++) {
map.put("key" + i, "value" + i);
}
map.get("key" + 3);
for (String value : map.keySet()) {
System.out.println(value);
}
}
}
结果是:
key0
key1
key2
key4
key5
key6
key7
key8
key9
key3
分享到:
2010-07-15 11:23
浏览 20841
评论
2 楼
kjstart
2016-03-17
因为当LRU用你就可以从头删了
1 楼
wkcgy
2012-03-19
因为它使用了LRU算法