集合框架之map接口

来源:互联网 发布:为什么28岁不能学java 编辑:程序博客网 时间:2024/05/22 16:07

map接口的常用方法:
entrySet()
返回此映射中包含的映射关系的 Set 视图

hashmap的常见操作

 hashmap的CRUD // HashMap<Integer, A> hashMap=new HashMap<Integer,A>(); //添加 hashMap.put(5, a); hashMap.put(4, b);//修改hashMap.put(5, b); //获取 A s=hashMap.get(5);System.out.println(s.num); //删除 hashMap.remove(4); //遍历 List<HashMap<Integer, A>> list=newArrayList<HashMap<Integer,A>>();list.add(hashMap);for (HashMap<Integer, A> hashMap2 : list) {System.out.println(hashMap2.values());System.out.println("-------------------"); } 

我们在来看看HashTable和HashMap区别
第一,继承不同。
public class Hashtable extends Dictionary implements Map
public class HashMap extends AbstractMap implements Map
第二
Hashtable 中的方法是同步的。
而HashMap中的方法在缺省情况下是非同步的。
第三
Hashtable中,key和value都不允许出现null值。
在HashMap中,null可以作为键,这样的键只有一个;可以有一个或多个键所对应的值为null。
第五
哈希值的使用不同,HashTable直接使用对象的hashCode。而HashMap重新计算hash值。
第六
Hashtable和HashMap它们两个内部实现方式的数组的初始大小和扩容的方式。HashTable中hash数组默认大小是11,增加的方式是 old*2+1。
HashMap中hash数组的默认大小是16,而且一定是2的指数。

0 0