使用HashSet存储数字的排序的问题
来源:互联网 发布:排序算法效率比较 编辑:程序博客网 时间:2024/06/01 09:44
利用hashset实现随机出1000个不重复的数字的过程中发现了集合输出数字排序的问题。
Set<Integer> nums = new HashSet<Integer>(); int count = 0; while(true){ count++; int num = (int) (Math.floor(Math.random()*1000)+1); System.out.println(num); nums.add(num); int size = nums.size(); if(size==1000){ break; } } System.out.println("-----------"+count+"------------"); for(Integer i : nums){ System.out.println(i); }
虽然利用hashset不重复的特点存储了1000个不重复的数据。但是输出的时候却是顺序输出的。hashset是无序集合,所指的无序应该指的是存入的顺序和输出的顺序是不同的,内部应该还是经过了哈希值来排序的,但是这个顺序输出的结果还是令人很惊讶!
不知道集合内部是如何排序的,还是输出有问题?
但是直接存入数字,再输出的时候,就是正常的无序状态
不管存入的顺序如何,但是输出结果的顺序不变!看来内部的排序肯定也有一定的规则!
0 0
- 使用HashSet存储数字的排序的问题
- HashSet存储的对象问题
- hashSet的存储机制
- HashSet的存储原理
- HashSet的存储机制
- HashSet的排序
- HashSet的内容如何排序
- List/HashSet/HashMap的排序
- java HashSet的使用
- HashSet的使用
- HashSet集合的使用
- Hashset迭代器的使用
- 演示HashSet的使用
- HashSet的使用
- 集合HashSet的使用
- HashSet下的字符串排序,关键字,HashSet转TreeSet()
- 有关HashSet遇到的问题
- HashSet中出现的问题
- zzulioj 1209: 东东的女朋友(一)
- ARM Introduction
- 由web程序出现乱码开始挖掘(Bom头、字符集与乱码)
- java.sql.SQLException: 无效的列类型: 1111 (jdbcType相关)
- Android studio 微信支付
- 使用HashSet存储数字的排序的问题
- postgresql 分组支持
- 润乾V4集成后报错no report config
- 无限轮播的使用
- ARM体系结构
- 取一个月之后的时间
- 掌握感性思路,轻松写出高质量的SEO原创文章
- php中实现记住密码下次自动登录的例子
- hog特征