目录
一、简要描述
此抽奖方式为:在1~30个数字之间 挑选7个不重复的数字输入,系统会根据中奖的号码与用户输入的号码进行比较,系统会输出是否中奖的提示!
二、代码
import java.util.Scanner;
import java.util.ArrayList;
import java.util.List;
import java.util.Random;//随机数
public class ArrayMax{
@SuppressWarnings("unchecked")
public static void main(String[] args) {
int flag=0;
Random r=new Random();
@SuppressWarnings("rawtypes")
List myList=new ArrayList();//生成数据集,保存随机数
int[] num=new int[7]; //将输入的数字存入数组中
int[] arr=new int[7]; //将产生的随机数存入数组
System.out.println("请从1~30中挑选7个不重复的数字输入!");
@SuppressWarnings("resource")
Scanner sc=new Scanner(System.in);
for(int i=0;i<7;i++) {
int j=i+1;
System.out.print("请输入第"+j+"个数字:");
int number=sc.nextInt();
if(number>=1&&number<=30) {
num[i]=number; //将输入的数字存入数组
}
else {
System.out.print("您输入第"+j+"个号码不在设定的范围之内,请重新输入:");
number=sc.nextInt();
num[i]=number;
}
}
while(myList.size()<7) {
int code=r.nextInt(30)+1;
if(!myList.contains(code)) {
myList.add(code); //使产生的随机数不重复
}
}
System.out.println("此次包含奖项的号码如下:");
for(int j=0;j<7;j++) {
arr[j]=(Integer)(myList.get(j)); //将随机数存入数组
System.out.print(arr[j]+" ");
}
//判断抽中几个数字
for(int i=0;i<7;i++) {
for(int j=0;j<7;j++) {
if(num[i]==arr[j]) {
flag+=1;
}
}
}
System.out.println();
System.out.println("您一共抽中"+flag+"个号码!");
//判断用户是否获奖以及获了几等奖
if(flag==7) {
System.out.println("恭喜您获得一等奖!");
}
else if(flag==6) {
System.out.println("恭喜您获得二等奖!");
}
else if(flag==5) {
System.out.println("恭喜您获得三等奖!");
}
else {
System.out.println("很遗憾您没有获奖!");
}
}
}