java基础之彩票项目
程序员文章站
2022-07-10 19:07:08
今天通过代码实现一个购买*,了解自动生成数组,巩固JAVA基础:首先使用自动获取彩票数字:public static void jiXuan(int a){ for (int i = 0; i < a; i++) { //自动生成彩票 String []red=format(create(5));//自动生成红区的5个数字并格式化 String []blue=format(create(2));//自动生成蓝区的2个数字并格式化 //遍历红色区域 Sy...
今天通过代码实现一个购买*,了解自动生成数组,巩固JAVA基础:
首先使用自动获取彩票数字:
机选的彩票注数
public static void jiXuan(int a){
for (int i = 0; i < a; i++) {
//自动生成彩票
String []red=format(create(5));//自动生成红区的5个数字并格式化
String []blue=format(create(2));//自动生成蓝区的2个数字并格式化
//遍历红色区域
System.out.print("生成的红色区域的数字:");
for (int j = 0; j < red.length; j++) {
System.out.print(red[j]+" ");
}
//遍历蓝色区域
System.out.print("生成的蓝色区域的数字:");
for (int j = 0; j < blue.length; j++) {
System.out.print(blue[j]+" ");
}
System.out.println();
}
//提示买票钱
System.out.println("应付"+a*2+"元");
}
然后对获得的彩票进行排序:
/**
* 格式化数组 补位
* @param arr 待传递的红区或蓝区的数组
* @return 格式化后的数组
*/
public static String[] format(int [] arr){//[06,12,25,5,18]
String []str=new String[arr.length];
//排序
Arrays.sort(arr);
//补位
for (int i = 0; i < arr.length; i++) {
str[i]=arr[i]<10? "0"+arr[i] :""+arr[i];
}
return str;
}
自动生成数组:
/**
* 自动生成数组
* @param num 根据传递的数字确定生成的是红区的数组 还是蓝区的数组
* @return 生成的是红区或者蓝区的数组
*/
public static int[] create(int num){
int [] arr=new int[num];//num==5 red 1-35 num=2 1-12
int ran=0;//存储区域
if(num==5){
//自动生成红区 1-35
ran=35;
}else if(num==2){
//自动生成蓝色 1-12
ran=12;
}
//遍历 的是红区或蓝区
for (int i = 0; i < arr.length; i++) {// [12,5,64,78,6]
//自动生成一个数字
int ranNum=new Random().nextInt(ran)+1;// 12 --->0-11
if(i==0){//说明是空的数组
arr[i]=ranNum;
}else{
for (int j = 0; j < i; j++) {
if(arr[j]==ranNum){
//让当次循环无效
i--;
break;
}
//不同的值给数组赋值
arr[i]=ranNum;
}
}
}
return arr;
}
main方法测试:
public static void main(String[] args) {
int []red=create(2);
for (int i : red) {
System.out.println(i);
}
System.out.println("欢迎来到彩票管理系统 1.机选 2.自选 3.退出");
Scanner input=new Scanner(System.in);
System.out.println("请输入选项");
int choice=input.nextInt();
switch (choice) {
case 1:
System.out.println("机选");
//调用功能 自动生成 红区5 个数字和蓝区的2个数字 并且 格式化一个字符串类型的 数组
System.out.println("需要买几注彩票");
int num=input.nextInt();
jiXuan(num);
break;
case 2:
System.out.println("自选");
break;
default:
break;
}
}
本文地址:https://blog.csdn.net/zj408130895/article/details/107456311