要求:获取10个1-20之间的随机数要求不能重复
import java.util.ArrayList;
import java.util.Random;
/*获取10个1-20之间的随机数要求不能重复
*1 创建一个集合存放生成的随机数
*2 使用while(集合中不存在该元素)就生成一个元素,将元素加入到集合中
*3 重复2 10次
*/
public class Test {
public static void main(String[] args) {
System.out.println(getNum(10));
}
public static ArrayList<Integer> getNum(int m){
ArrayList<Integer> list = new ArrayList<Integer>();
int n = (int)(Math.random()*20 + 1);
for(int i=0;i<m;i++){
while(list.contains(n)){
n = (int)(Math.random()*20 + 1);
}
list.add(n);
}
//方法二
int count = 0;
Random r = new Random();
while(count<m){
int i = r.nextInt(20) +1;
if(!list.contains(i)){
list.add(i);
count++;
}
}
return list;
}
}
网友评论