一.摘要
HashMap是Map的实现类,支持Map所有的操作,存放的键值支持任何元素类型(包含null)。HashMap的迭代顺序不是固定,LinkedHashMap保证迭代顺序的固定性(推荐使用)。
HashMap不是同步的,如果多个线程中的某个线程访问一个实例修改map结构,访问的map需要保证是同步的。结构的修改是指添加或删除实体的操作,改变实体的值不属于结构改变。通常创建Iterator对象调用iterator()方法获取,如果当前map结构被改变这个时候iterator迭代器被用于遍历元素,可能抛出ConcurrentModificationException异常。只有remove方法在iterator迭代器遍历元素时允许删除操作,它是不可能保证这种机制在所有不同步的并发修改的情况下工作。它应该只用于调试的目的。
二.HashMap方法解析
HashMap实现继承AbstractMap抽象类(AbstractMap实现Map接口),实现Cloneable、Serializable接口,间接实现Map接口,重写上述所有接口的方法或抽象类的方法,关于Map方法的使用可以参考《Map接口集合方法解析》。
1.clone(),复制当前map对象,两种对象equals
- HashMap map=new HashMap();
- map.put("id", new Integer(123456789));
- HashMap map2=(HashMap) map.clone();
- System.out.println(map.equals(map2));
你可能感兴趣的文章
来源:TeachCourse,
每周一次,深入学习Android教程,关注(QQ158#9359$239或公众号TeachCourse)
转载请注明出处: https://www.teachcourse.cn/1849.html ,谢谢支持!
转载请注明出处: https://www.teachcourse.cn/1849.html ,谢谢支持!