java简易的小游戏
主要产生随机数,对比,输出系统时间等简易功能
代码示例如下:
package lottery_system;
import java.util.Scanner;
public class Lottery {
/**
* 产生1~35之间的7个随机整数,且不能重复
* @return
*/
public static int[] getRandomArray(){
int[] randomArray = new int[7];
for(int i=0;i<randomArray.length;i++){
//产生1~35之间的随机整数
int num = (int)(Math.random() * (35 + 1));
//如果数组中已经有该随机数num,则不对其位置进行赋值,让其停留在该位置继续产生随机数,直到产生不相同的数为止
if(isContain(randomArray,num)){
i--;
}else{
randomArray[i] = num;
}
}
return randomArray;
}
/**
* 判断一个数组中是否存在某一个指定的整数
* @param array
* @param num
* @return
*/
public static boolean isContain(int[] array,int num){
boolean flag = false;
for(int i=0;i<array.length;i++){
if(array[i] == num){
flag = true;
break;
}
}
return flag;
}
/**
* 从键盘上输入7个整数,保存到数组中
* @return
*/
public static int[] getInputArray(){
Scanner in = new Scanner(System.in);
System.out.println("(1-35)之间的7个数字以逗号隔开:");
String inputString = in.next();
String[] stringArray = inputString.split(",");
int[] inputArray=new int[stringArray.length];
for(int i=0;i<stringArray.length;i++){
inputArray[i]=Integer.parseInt(stringArray[i]);
// System.out.print(inputArray[i]+" ");
}
in.close();
return inputArray;
}
/**
* 判断2个数组中有多少个相同的数字
* @param randomArray
* @param inputArray
* @return
*/
public static int countTwoArray(int[] randomArray,int[] inputArray){
int count = 0;
//判断的是对应位置上的数字是否相同
// for(int i=0;i<randomArray.length;i++){
// if(randomArray[i] == inputArray[i]){
// count ++;
// }
// }
//不同的位置
for(int i=0;i<randomArray.length;i++){
for(int j=0;j<inputArray.length;j++){
if(randomArray[i] == inputArray[j]){
count++;
}
}
}
return count;
}
public static void print(int[] array){
for(int i=0;i<array.length;i++){
System.out.print(array[i] + " ");
}
System.out.println();
}
}
Test测试:
package lottery_system;
import java.text.SimpleDateFormat;
import java.util.Date;
public class Test {
/**
* @param args
*/
public static void main(String[] args) {
System.out.println("---------购买彩票---------");
System.out.print("请输入购买号码:");
int inputArray[] = Lottery.getInputArray();
System.out.println("---------彩票开奖---------");
//产生随机数数组
int randomArray[] = Lottery.getRandomArray();
Lottery.print(randomArray);
System.out.println("---------兑 奖---------");
//获取时间对象
Date date = new Date();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
System.out.println("【购买时间】" + sdf.format(date)); // 打印当前时间
//获取了键盘上输入的7个整数数组
int count = Lottery.countTwoArray(randomArray, inputArray);
System.out.println("中奖个数:"+count);
if(count == 7){
System.out.println("您的中奖金额为:350元");
}else if(count == 6){
System.out.println("您的中奖金额为:300元");
}else if(count == 5){
System.out.println("您的中奖金额为:250元");
}else if(count == 4){
System.out.println("您的中奖金额为:200元");
}else if(count == 3){
System.out.println("您的中奖金额为:150元");
}else if(count == 2){
System.out.println("您的中奖金额为:100元");
}else if(count == 1){
System.out.println("您的中奖金额为:50元");
}else {
System.out.println("很抱歉,您没中奖!再接再厉!");
}
}
}
项目代码已经打包好上传了,对于新手虽然简单但值得学习,需要的可以去下载