首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

彩票 31 选 七

2012-10-07 
彩票 31 选 7方法一、用集合实现(用了面向对象的思维)。?public class Demo4 {? public static void main(St

彩票 31 选 7

方法一、用集合实现(用了面向对象的思维)。

?

public class Demo4 {
? public static void main(String[] args) {
?? List list? =new ArrayList();
?? for(int i=1;i<=31;i++){
????????????????? list.add(i);
???? }
??
?? for(int i=0;i<7;i++){
????? //得到谁,移除谁。list的大小是变化,所以不会重复。
???int k= (int)(Math.random()*(31-i));
??????????? System.out.println(list.get(k));
??????????? list.remove(k);
??????? }
?? }
?? }

?

?

?

?

?

?

方法2、 用数组实现

?

public class Test5 {
? public static void main(String[] args){
//?? 指定数组的大小
?? int n=30;
?? int[] a=new int[n];
??
//?? 给数组赋值
?? for(int i=0;i<a.length;i++){
??? a[i]=i+1;
?? }
//?? 声明一个放新数的数组。
?? int[] k=new int[7];
?? for(int i=0;i<k.length;i++){
//???随机生成一个数,用来做旧数组的索引。
???int s=(int)((Math.random())*n);
//???给新数组赋值
??? k[i]=a[s];
//??? 给旧数组赋值,让取出的值放在数组的最后一位,方便移除。
??? a[s]=a[n-1];
//??? 让旧数组大小减一
??? n--;
??? System.out.println(k[i]);
?? }

? }
}

?

?

?

?

下面是:别人总结的:

1、也谈生成不重复数的算法

2、想从1--100之间随机不重复的20个数,赋给a[ ]数组

3、生成不重复的随机数的三种方法

?

?

?

??????? 我只想说一句话,方法还有很多!发挥自己的思想吧!

热点排行