赞
踩
1、类型区别:
HashMap
它是最常用的map,它通过hashcode值存储数据,根据键可以直接获取它的值,具有很快的访问速度。他是非同步的。它允许一个key为null,如果不止一个的话它会被覆盖啊,但它允许多个value为null;
TreeMap
它能把它保存的记录根据key值默认升序排序,也可以指定顺序。当Iterator遍历过TreeMap后,得到的记录是拍过序的。TreeMap不允许key值为null。它是非同步的;
HashTable
与hashmap类似,但不同的是,它不允许key-value值为空。它支持线程同步,即任意一个线程只能写入一个hashtable,也因此它比较慢;
LinkedHashMap
它保存了记录的插入顺序,即在Iterator遍历LinkedHashMap的时候,得到的记录肯定是先插入的。在遍历时会比hashmap慢,key-value值均允许为null,它是非同步的。
2、什么是双列集合?
首先,对比之前的collection单列集合来讲,map集合是存储key-value键值对的的集合,形象理解一下就是,单列集合就是单身,双列集合就是夫妻。
3、list与map的区别与联系?
1、map的初始化及插入、删除、获取、清空:
Map<String,String> map = new HashMap<>();//初始化
map.put("key1","value1");//插入
map.remove("key1"); //删除
map.get("key1"); //获取
map.clear(); //清空
这些操作就比较简单,就不贴例码了。
2、几种遍历方式:
1.for循环遍历
for(Map.Entry<String, String> s:set){
System.out.print(s.getKey() + " ");
System.out.print(s.getValue() + " ");
}
2、迭代器遍历
Iterator<Map.Entry<String,String>> iter = set.iterator();
while(iter.hasNext()){
Map.Entry<String,String> entry = iter.next();
System.out.print(entry.getKey() + " ");
System.out.print(entry.getValue() + " ");
}
3、常用API
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。