我用 Java 为我的宾果游戏创建了两种方法。一种方法创建一个新的棋盘,它根据宾果规则 (1-75) 用整数填充宾果棋盘。我的第二种方法生成范围为 1 - 75 的随机数。
public static int drawNum(){
Random rand = new Random();
int num = rand.nextInt(75)+1;
return num;
}
public static void bingoCard(){
int [][]card=new int [5][5];
ArrayList<Integer> alreadyUsed = new ArrayList<Integer>();
boolean valid = false;
int tmp = 0;
for(int i = 0; i <= 4; i++){
for(int row = 0; row < card.length; row++){
while(!valid){
tmp = (int)(Math.random() * 15) + 1 + 15 * i;
if(!alreadyUsed.contains(tmp)){
valid = true;
alreadyUsed.add(tmp);
}
}
card[row][i] = tmp;
valid = false;
}
}
card[2][2] = 0;
//create array to make title.
String title []={"B","I","N","G","O"};
for(int i=0;i<title.length;i++){
System.out.print(title[i]+ "\t");
}
System.out.println();
for(int row=0;row<card.length;row++){
for(int col=0;col<card[row].length;col++){
System.out.print(card[row][col]+ "\t");
}
System.out.println();
}
}
Run Code Online (Sandbox Code Playgroud)
我需要帮助的是,如何检查 drawNum() 方法是否对应于存储在我的 bingoCard() 数组中的任何值?如果是这样,打印出一个填充了整数的新数组。如果满足宾果游戏的条件,那么你赢了。
我希望我不要让它听起来像是我希望你为我做这件事,但我对如何开始编码那部分感到困惑。谢谢你。
这是我的建议 - 立即学习面向对象编程
我看到您正在使用 JDK 中提供的对象,那么为什么不学习创建自己的对象呢?
使用以下方法 (-) 和成员 (+) 创建两个类(PS。这不是记录代码的正式方式)
BingoCard
+list of numbers on card
-reset() : gets new numbers for this card
-test(BingoDrawer) : Tests to see if this card won on this drawing
-toString() : returns a String representation of this card
BingoDrawer
+list of numbers drawn
-reset() : draws new numbers
-hasNumber(int number) : tests if this number was drawn
-toString() : returns a String representation of this drawing
Run Code Online (Sandbox Code Playgroud)
还有一个建议
如果你按照我的建议你可以写这样的代码
public static void main(String[] args) {
BingoCard bc = new BingoCard();
BingoDrawer bd = new BingoDrawer();
while(thePlayerWantsToPlay()) { //function to be defined by you
bc.reset();
bd.reset();
System.out.println(bc);
System.out.println(bd);
System.out.println(bc.test(bd));
}
}
Run Code Online (Sandbox Code Playgroud)
您可以更进一步,创建一个BingoGame类并执行我在main其中所做的操作,然后创建一个实例BingoGame并start在该对象上调用某些方法。
| 归档时间: |
|
| 查看次数: |
21744 次 |
| 最近记录: |