如何在不同的类中使用main中的数组。我正在制作一个游戏,我需要进行三次单掷模具。然后,我取每个值,并进行比较,如2/3数字匹配。如果然后添加到12然后给玩家回锅。 这是我想要使用数组中的信息的类。我昨晚学会了数组和循环,所以我真的不知道我在做什么
<svg class="circular-loader" viewBox="25 25 50 50">
<circle class="loader-path" cx="50" cy="50" r="20" fill="none" stroke-width="2" stroke-miterlimit="10"/>
</svg>
这是我创建数组的主要部分。
import java.util.Scanner;
public class Game {
private double Bet;
private double Pot;
private double TotalPot;
public void Pot( ){
Pot = 50;
}
public void inputBet( ) {
Scanner keyboard = new Scanner (System.in);
System.out.println("Please enter the current month in numerical format: ");
Bet = keyboard.nextDouble();
if (Bet <= Pot) {
System.out.println("Error, Bet out of range");
inputBet();
}
else if (Bet == 0) {
System.out.println("Thank you for playing");
}
}
public void inputEnd( ){
}
public void removeBet( ){
TotalPot = Bet - Pot;
}
public void dieComparison1(){
if ((die[0] == die[1]) || (die[0] == die[2])){
TotalPot = (Bet * 2) + Pot;
}
}
public void print(){
System.out.println(+ TotalPot);}
}
答案 0 :(得分:0)
在上面的代码中,您已使用main
方法向您发布了已注释掉已创建Game
类实例的行:
//Game smith = new Game();
//smith.Pot();
//smith.inputBet();
首先创建Game
的实例并将其存储在变量smith
中,然后在Pot
上调用方法inputBet
和smith
方法变量,你可以在Game
类声明rollDie
中声明另一个方法,以包含用于掷骰子的代码,并将其从smith.rollDie()
称为main
方法。这样就不需要从die
类访问main
中创建的数组Game
。
我的意思是:
首先,在die
类中创建int[]
类型的变量Game
,并将其初始化为3:
private int[] die = new int[3];
你创建一个方法说rollDie()
方法,其中包含滚动模具的方法:
public void rollDie(){
Die bob = new Die();
int total = 0;
for(int i = 0; i < 3; i++){
die[i] = bob.rollDie();
bob.displayDie(die[i]);
total = total + die[i];
}
bob.displayDie(total);
}
现在在您的main
方法评论中注释所有未评论的内容,并取消评论所有评论内容。然后添加行smith.rollDie()
以滚动骰子并获得结果:
Game smith = new Game();
smith.Pot();
smith.inputBet();
smith.rollDie();
// Here call the other method that are required to play the game like `dieComparision1()` etc.
/*int[] die = new int[3];
Die bob = new Die();
int total = 0;
for(int i = 0; i < 3; i++){
die[i] = bob.rollDie();
bob.displayDie(die[i]);
total = total + die[i];
}
bob.displayDie(total);*/