3、Map集合
map接口是与collection接口完全独立的另外一个体系,且set、list、Collection只能操作单个元素;因为map是以key-value的键值映射的形式存在的。
3.1HashMap
HashMap:存储一组无序,key值不可重复,但value可重复的元素
/**
* @author EA_emran
*/
public class LearnHashMap {
public static void main(String[] args) {
HashMap<String, String> hashMap = new HashMap<String, String>();
hashMap.put("h","hello");
hashMap.put("e","emran");
hashMap.put("b","bahram");
hashMap.put("u","umut");
hashMap.put("e1","ehsan");
System.out.println(hashMap);
hashMap.remove("e1");
System.out.println(hashMap);
if(hashMap.containsKey("a")){
System.out.println("存在值为a的key");
}else {
System.out.println("不存在值为a的key");
}
if (hashMap.containsValue("umut")){
System.out.println("存在值为umut的value");
}else{
System.out.println("不存在值为umut的value");
}
Set keys = hashMap.keySet();
Iterator iterator = keys.iterator();
System.out.println("集合中的key:");
while (iterator.hasNext()){
String key = (String) iterator.next();
System.out.println(key+",");
}
}
}
运行结果
3.2HashMap
Hashtable:存储一组无序,key值不可重复,但value可重复的元素。
用法基本跟HashMap一致,Hashtable是一个较早推出的类;
与HashMap的区别在于:Hashtable是线程安全的,但行呢较低;HashMap费线程安全但是性能较高。
3.3TreeMap
TreeMap能够根据key值自动对数据进行排序
/**
* @author EA_emran
*/
public class LearnTreeMap {
public static void main(String[] args) {
TreeMap<Integer, String> treeMap = new TreeMap();
treeMap.put(3,"JavaSE");
treeMap.put(2,"JavaEE");
treeMap.put(5,"Spring");
treeMap.put(4,"Mybatis");
treeMap.put(1,"JavaME");
System.out.println(treeMap);
}
}
运行结果