黑马程序员技术交流社区

标题: 产生10个随机数,但不能重复 [打印本页]

作者: 穆帆    时间: 2015-9-30 08:39
标题: 产生10个随机数,但不能重复

* 产生10个1-20之间的随机数要求随机数不能重复
*
* 1.利用HashSet不存储重复元素的特性;
* 2.定义一个无限循环;
* 3.每次循环生成一个随机数;
* 4.将这个随机数直接存储到集合中;
* 5.如果集合的长度达到10,就结束循环;
*
*/
public class Demo {
        public static void main(String[] args) {
                //1.定义一个集合
                TreeSet<Integer> set = new TreeSet<>();
                //2.随机数的类
                Random rdm = new Random();
                //3.无限循环
                while(set.size() < 10){
                        int num = rdm.nextInt(20) + 1;
                        set.add(num);
                }
                //打印
                for(Integer num : set){
                        System.out.println(num);
                }
        }
}


作者: hehe~    时间: 2015-9-30 08:57
我没有用集合,老老实实写得
作者: 穆帆    时间: 2015-9-30 09:01
hehe~ 发表于 2015-9-30 08:57
我没有用集合,老老实实写得

如过不用集合的话怎么将获得的随机数排序
作者: hehe~    时间: 2015-9-30 09:06
穆帆 发表于 2015-9-30 09:01
如过不用集合的话怎么将获得的随机数排序

方法很多啊,放在数组里面冒泡排序,也可以放在类里面实现Compareable接口
作者: ln0491    时间: 2015-9-30 09:18
学习了。。。。。。。。。。。
作者: heshiwei    时间: 2015-9-30 09:59
学习了,非常棒,希望楼主再接再厉。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2