今天遇到了LinkedHashMap,觉得有必要记录一下它的特点
1.为啥使用LinkedHashMap?
用普通的键值对映射时(如HashMap),遍历时,顺序是乱的,为了让键值对进出按一定的顺序,所以用LindedHashMap
2.它的特点是啥?
它的特点就是为啥要用它。它的特点是有序的键值对
package test;
import java.util.Collection;
import java.util.HashMap;
import java.util.LinkedHashMap;
import java.util.Map;
public class LinkedHashMapTest {
public static final Map<String, String> hashMap;
public static final Map<String, String> linkedMap;
static{
hashMap = new HashMap<String, String>();
hashMap.put("key1", "value1");
hashMap.put("key2", "value2");
hashMap.put("key3", "value3");
linkedMap = new LinkedHashMap<String, String>();
linkedMap.put("key1", "value1");
linkedMap.put("key2", "value2");
linkedMap.put("key3", "value3");
}
public static void main(String[] args) {
Collection<String> hashColl = hashMap.values();
Collection<String> linkColl = linkedMap.values();
System.out.println("*************HashMap输出************");
for (String str : hashColl) {
System.out.println(str);
}
System.out.println("*************HashMap结束************\n");
System.out.println("*************linkedMap输出************");
for (String str : linkColl) {
System.out.println(str);
}
System.out.println("*************linkedMap结束************");
}
}
输出结果:
*************HashMap输出************
value3
value2
value1
*************HashMap结束************
*************linkedMap输出************
value1
value2
value3
*************linkedMap结束************