关于HashMap与LinkedHashMap.docx

  1. 1、本文档共19页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
关于HashMap与LinkedHashMap

关于HashMap与LinkedHashMap??2011-01-21 15:11:49|??分类: java |??标签:hashmap??key??value??entity??util?? |字号?订阅 关于HashMap与LinkedHashMap2011-01-21?HashMap是无序的,HashMap在put的时候是根据key的hashcode进行hash然后放入对应的地方。所以在按照一定顺序put进HashMap中,然后遍历出HashMap的顺序跟put的顺序不同(除非在put的时候key已经按照hashcode排序号了,这种几率非常小)单纯的HashMap是无法实现排序的,这的排序是指,我们将键值对按照一定的顺序put进HashMap里,然后在进行取键值对的操作的时候,是按照put进去的顺序把键值对取出来的。JAVA在JDK1.4以后提供了LinkedHashMap来帮助我们实现了有序的HashMap!LinkedHashMap取键值对时,是按照你放入的顺序来取的。EG:import java.util.HashMap;import java.util.Iterator;import java.util.LinkedHashMap;import java.util.Map;import java.util.Map.Entry;/** * @authorTEANA E-mail: mmz06@163.com * @version创建时间:2011-1-21 下午02:23:07 * @DOLinkedHashMap与HashMap */publicclass LinkedMap{publicstaticvoid main(String[] args){//LinkedHashMap 有序Map maps = new LinkedHashMap();maps.put(1, 张三);maps.put(2, 李四);maps.put(3, 王五);maps.put(4, 赵六);System.out.println(LinkedHashMap(有序):);Iterator it = maps.entrySet().iterator();while(it.hasNext()){Map.Entry entity = (Entry) it.next();System.out.println([ key = + entity.getKey() + , value = + entity.getValue() + ]);}//HashMap 无序Map map = new HashMap();map.put(1, 张三);map.put(2, 李四);map.put(3, 王五);map.put(4, 赵六);it = null;System.out.println(HashMap(无序):);it = map.entrySet().iterator();while(it.hasNext()){Map.Entry entity = (Entry) it.next();System.out.println([ key = + entity.getKey() + , value = + entity.getValue() + ]);}}}执行结果如下:LinkedHashMap(有序):[ key = 1, value = 张三 ][ key = 2, value = 李四 ][ key = 3, value = 王五 ][ key = 4, value = 赵六 ]HashMap(无序):[ key = 3, value = 王五 ][ key = 2, value = 李四 ][ key = 1, value = 张三 ][ key = 4, value = 赵六 ]HashMap,LinkedHashMap,TreeMap应用简介共同点:HashMap,LinkedHashMap,TreeMap都属于Map;Map 主要用于存储键(key)值(value)对,根据键得到值,因此键不允许键重复,但允许值重复。 不同点:1.HashMap里面存入的键值对在取出的时候是随机的,也是我们最常用的一个Map.它根据键的HashCode值存储数据,根据键可以直接获取它的值,具有很快的访问速度。在Map 中插入、删除和定位元素,HashMap 是最好的选择。 2.TreeMap取出来的是排序后的键值对。但如果您要按自然顺序或自定义顺序遍历键,那么TreeMap会更好。 3. LinkedHashMap 是HashMap的一个子类,如果需要输出的顺序和输入的相同,那么用LinkedHashMap可以实现. 代码实例:package

文档评论(0)

xcs88858 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档