HashMap的排序机制?? HashMap是无序的, 你再插入几个数据, 它还会变. 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 HashMap无序排列,也不是 同步的。。 学习一下:)你取值又与顺序无关啊HashMap.get("A");HashMap.get("B");HashMap.get("C"); HashMap 是有序的,但是他是根据key的hashcode来进行排序的,你如果要想排序的话,可以使用TREEMap或者是LINKMap,这些是根据key排序的. 有排序,看看think in java,这块有讲 有排序,看看think in java,这块有讲------------------------对我们开发来讲就是没序, 你能跟踪它的Hash变化吗 ? 简单的说,hashmap内部的数据结构中有一个链表数组。key值通过hash计算变成一个整数,对应数组下标,value就链在这个数组单元的链表上(不同的key值hash过后,可能会生成相同的值)。由此可见,内部数值的顺序并不是以存放的先后顺序为主,而是以hash值的顺序为主,其次才是存放的先后顺序。以前读了段时间源程序,记忆中好像是这样的......jdk目录下游src.zip,有兴趣可以打开hashmap的源程序深入研究一下...... lucene查询的问题,很急,求解决 j2ee自学 Hibernate中的懒加载异常 有哪位高手告诉我像QQ和MSN中只能单机登录是怎么实现的 jboss下怎么部署petstore? 一个JSP表单问题 又有问题了,请大家帮帮忙。 struts中property可以以数组形式传递吗? 请教有关vector的问题 求大佬指教 关于访问共享文件的问题 最近要做OpenCRX的二次开发,没接触过,谁能介绍一下? OpenCRX分为多少级用户?
你取值又与顺序无关啊
HashMap.get("A");
HashMap.get("B");
HashMap.get("C");
------------------------
对我们开发来讲就是没序, 你能跟踪它的Hash变化吗 ?
由此可见,内部数值的顺序并不是以存放的先后顺序为主,而是以hash值的顺序为主,其次才是存放的先后顺序。以前读了段时间源程序,记忆中好像是这样的......jdk目录下游src.zip,有兴趣可以打开hashmap的源程序深入研究一下......