java - 使用数组和方法的彩票程序(Java)
问题描述
我正在制作一个彩票程序,模拟一个人选择 6 个中奖号码并使用方法抽取中奖号码。
这是一个示例输出
Enter your numbers:
25
31
20
8
47
31
The winning numbers are:
48 16 28 38 46 36
0 out of the 6 numbers you chose are winning numbers, better luck next time!
我的问题是查找总匹配数的方法不起作用,我不知道如何解决它。用户输入的数字和彩票随机数都是数组
这是我的代码:
import java.util.*;
public class Main {
private static boolean[] lottery;
private static boolean[] array;
public static void main(String[] args) {
getUserNumbers();
getRandomNumbers();
getTotalMatchedNumbers();
}
public static void getRandomNumbers(){
int[] lottery = new int[6];
int lotteryNumbers;
for (int i = 0; i < 6; i++) {
lotteryNumbers = (int) (Math.random() * 50);
for (int x = 0; x < i; x++) {
if (lottery[x] == lotteryNumbers)
{
lotteryNumbers = (int) (Math.random() * 50);
x = -1;
}
}
lottery[i] = lotteryNumbers;
}
System.out.println("The winning numbers are: ");
for (int i = 0; i < lottery.length; i++)
System.out.print(lottery[i] + " ");
}
public static void getUserNumbers(){
Scanner scanner = new Scanner(System.in);
int[] array = new int[10];
System.out.println("Enter your numbers: ");
for(int i=0; i < 6; i++){
array[i]=scanner.nextInt();
}
System.out.println("You have entered: ");
for (int i=0; i < 6; i++){
System.out.print(array[i]);
System.out.print(" ");
System.out.println(" ");
}
}
public static void getTotalMatchedNumbers(){
int matched = 0;
for(int i = 0; i < 6; i++){
for(int j = 0;j < 6; j++){
if(lottery[i] == array[j]){
matched = matched + 1;
}
}
if (matched != 6){
System.out.println(matched + " out of the 6 numbers you chose are winning numbers, better luck next time!");
}
else{
System.out.println("You got picked all the winning numbers! You win!");
}
}
}
}
解决方案
您应该在与数字相关的方法中使用字段,因为您的数字是在本地方法中生成的,而不是按类生成的。
推荐阅读
- java - Is Spring Dependency Injection only for singleton instances?
- python - 在基于模型 DJANGO 的 ForeignKey 字段的字段上引发错误
- python - 关于 Python 中匹配正则表达式中“.*”的问题
- javascript - 生成具有所有排列的数组的更有效方法?
- ios - 如何从 TextField 委托函数之一打印包含 UITextField 的 TableView 单元格的 indexPath?
- jquery - 提交表单后显示消息
- javascript - 如何使用箭头键、香草 JavaScript 将焦点转移到列表项上
- java - 循环遍历线程并处理多个结果
- c# - 如何使用 Xamarin 显示通过 Web 服务获取的列表
- python - 如何在使用自定义 QAbstractTableModel 创建 Qtableview 后为单元格着色