黑马程序员技术交流社区
标题:
一道入学考试题
[打印本页]
作者:
林以
时间:
2016-1-19 00:01
标题:
一道入学考试题
package com.itheima;
import java.util.HashSet;
import java.util.Iterator;
import java.util.Random;
/**
* 题目: 编写一个程序,获取10个1至20的随机数,要求随机数不能重复。
*
*/
/**
* 分析题干: 十个 不重复 随机数
* 基本思路: 利用HashSet的唯一性,往里面装入,再取出 重点: 怎么是控制循环的次数
*
* 具体思路:
* 1.创建Random类实例 ,产生随机数
* 2.用集合的长度作为循环的条件,如果集合中的元素不够10个,那就继续添加
* 3.拿到集合的迭代器,遍历输出符合条件的元素
*
*/
public class Test8 {
public static void main(String[] args) {
// 创建Random类实例
Random random = new Random();
// 创建一个HashSet集合
HashSet<Integer> hs = new HashSet<Integer>();
//如果集合中的元素少于十个,循环继续,往集合添加元素
while (hs.size() != 10) {
int num = random.nextInt(20) + 1;//产生1-20之间的随机数
hs.add(num);//往集合里添加元素,唯一性
}
//获取迭代器
Iterator<Integer> it = hs.iterator();
//遍历输出
while (it.hasNext()) {
System.out.println(it.next());
}
}
}
复制代码
作者:
zhanganping
时间:
2016-1-19 00:08
长见识了,
作者:
hansnowqiang
时间:
2016-1-19 08:54
标准顶贴姿势
作者:
hansnowqiang
时间:
2016-1-19 08:55
标准顶贴姿势
作者:
qt520
时间:
2016-1-19 10:47
思路学习了
作者:
呼雁潇
时间:
2016-1-19 11:41
学习了,思路很不错
作者:
hnsfxyzl
时间:
2016-1-19 12:22
学习
作者:
fury1994
时间:
2016-1-19 17:27
收藏~~~~~~~~~~~~~~~~
作者:
四夕
时间:
2016-1-19 18:09
涨姿势了...学习...
作者:
林以
时间:
2016-1-19 18:15
呼雁潇 发表于 2016-1-19 11:41
学习了,思路很不错
一起学习
作者:
kilin
时间:
2016-1-19 18:18
学习了{:3_46:}
作者:
PeterPang
时间:
2016-1-19 23:37
收藏 顶
作者:
曹德然
时间:
2016-1-19 23:48
学习、学习
作者:
shihao
时间:
2016-1-20 00:04
学习了
作者:
olivec
时间:
2016-1-22 16:19
import java.util.Arrays;
import java.util.Random;
public class Test1 {
public static void main(String[] args) {
Random random=new Random();
boolean[]flags=new boolean[20];
int[]arr=new int[10];
for (int i = 0; i < arr.length; i++) {
int n;
do {
n=random.nextInt(20);
} while (flags[n]);
arr[i]=n+1;
flags[n]=true;
}
System.out.println(Arrays.toString(arr));
}
}
作者:
h390
时间:
2016-1-22 17:59
学习了。
作者:
曹德然
时间:
2016-1-23 21:40
学习 学习
作者:
悠悠天下
时间:
2016-1-23 22:00
学习了 ,厉害
作者:
zhenufo
时间:
2016-1-23 22:21
先收藏下
作者:
black习
时间:
2016-1-23 23:02
我喜欢用增强for循环
作者:
我爱睡觉
时间:
2016-1-23 23:21
15楼 是用了图吗
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2