黑马程序员技术交流社区
标题:
关于HashSet
[打印本页]
作者:
hbk000
时间:
2015-4-10 13:05
标题:
关于HashSet
Set set = new HashSet();
set.add("2");
set.add(3);
set.add("1");
System.out.println(set);
上面代码的输出结果为{2,1,3},请问为何会得出这样的顺序。当第三行的set.add(3)改成set.add("3")时,结果变为{3,2,1}
作者:
hhqnmlgb
时间:
2015-4-10 13:10
Set集合是无序的,输出顺序与对象存储顺序无关,与对象的hash值有关
作者:
P李勇
时间:
2015-4-10 13:19
因为set的存储顺序和取出顺序是不一致的。
作者:
Advances
时间:
2015-4-10 13:37
Set集合中的数据是没有顺序的且数据不能重复 而List中的数据是有顺序的且能够数据重复
作者:
小栀子
时间:
2015-4-10 14:17
hashset的存储顺序是根据算法得出的hash值进行存储的,具体你可以去看一下数据结构的hash算法.
作者:
wkz_crystal
时间:
2015-4-10 14:21
这跟内部默认的hash值有关联的,都是按照其各自的hash值进行排序的
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2