1

ここには 2 つのクラスがあり、Player クラス内では、Scoresheet クラスからそれらの合計を取得したいと考えています。私はそれを行う方法がわかりません。

public class ScoreSheet {

public int getOnes(ArrayList<Integer> die)
{
    for (int i = 0; i < die.size(); i++)
    {
        if (die.get(i) == 1)
        {
            ones++;
        }
    }
    return ones;
}


public class Player {

private int ones = 0;
private int twos = 0;
private int threes = 0;
private int fours = 0;
private int fives = 0;
private int sixes = 0;
private int threeOfKind = 0;
private int fourOfKind = 0;
private int fullHouse = 0;
private int smallStraight = 0;
private int largeStraight = 0;
private int yahtzee = 0;
private int chance = 0;



public void checkScores(ArrayList<Integer> die)
{
    ones = Player -> ScoreSheet.getOnes(<Integer> die); // this is wrong, need to know
                                                        // how to get total                    
}
4

1 に答える 1

1

Player クラスには、現在の ScoreSheet オブジェクトに初期化される ScoreSheet 変数が必要です。変数は、コンストラクタ パラメータまたはsetScoreSheet(ScoreSheet scoreSheet)セッター メソッドを介して正しいオブジェクトに設定できます。Player は、getOnes(...)必要に応じて ScoreSheet 変数のメソッドまたはその他の ScoreSheet メソッドを呼び出すことができます。

于 2013-03-24T03:49:21.740 に答える