import java.util.ArrayList;
专注于为中小企业提供成都网站设计、成都网站建设服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业沙雅免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了上1000+企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。
import java.util.Arrays;
import java.util.Random;
public class Main {
static Random r = new Random();
public static void main(String[] args) {
System.out.println("---------500W 我来啦----------");
int 注数 = 10000 ;
for (int n = 0; n 注数; n++) {
摇奖();
}
System.out.println("---------500W 我来啦----------");
}
public static void 摇奖(){
//红球是1-32 篮球是1-16
ArrayListInteger list1 = new ArrayListInteger();
ArrayListInteger list2 = new ArrayListInteger();
int[] redBalls = new int[6];
for (int j = 0; j 32; j++)
list1.add(j + 1);
for (int i = 0; i 16; i++)
list2.add(i + 1);
// 红球
System.out.print("红球:");
for (int k = 0; k 6; k++) {
int indexRed = r.nextInt(list1.size());
redBalls[k]=list1.get(indexRed);
list1.remove(indexRed);
}
Arrays.sort(redBalls);//排序后打出红球
for(int s = 0 ; s redBalls.length ; s++){
System.out.print(getRedBall(redBalls[s]) + " ");
}
int indexBlue = r.nextInt(list2.size());
System.out.println("蓝球:" + getRedBall(list2.get(indexBlue))+"");
}
public static String getRedBall(Integer a){
String b = "";
if (a10) b = "0"+a+"";
else b = a.toString();
return b;
}
}
方法很多种,最简单理解的就直接便利一下数组就好了
for(int n = 0 ; ni ; n++){
if(a[i]==a[n]){
continue;
}
}
换掉
if(a[i]==a[i-1])
continue;
所以循环是不能这么写的,按你前面的思路的话应该这么改:
int number = 0;
int index;
while(num ball.length)
{
index = r.nextInt(balls.length);
while(isUsed(used, index) == 1)
{
index = r.nextInt(balls.length);
}
used[index] = true;
ball[i] = balls[index];
num++;
}
产生一次双色球之后还应该把used数组都置为false。
红球中6个数,蓝球中1个数时是一等奖 红球中6个数,蓝球不要中时是二等奖 红红球4个数,蓝球要中1个数
或者红球中5个,蓝球不要中时是四等球中5个数,蓝球中1红球中4个数,蓝球不要中
或者红球中3个,蓝球中1个时是五等奖
红球中2个数,蓝球中1个数
或红球中1个数,蓝球中1个数
或者蓝球中1个数时是六等奖
要是都没中就没奖个数时是三等