如何使用不一致的变量增加分数?
How do I increment a score with an inconsistent variable?
每次我 运行 我的代码分数总是被边替换,而不是像预期的那样增加。请记住,分配必须是面向对象的,因此所有的方法调用。该代码是游戏空闲骰子的变体。
这是所有相关代码,我已经尝试了所有我能想到的方法,我 95% 确定问题出在我的 setScore 方法中。
public void rollDice()
{
int min = 1;
int max = 6;
mult = 1;
sides = (int)Math.floor(Math.random()*(max-min+1)+min);
System.out.println("You rolled a " + sides);
sides = sides * mult;
System.out.println("You earned " + sides + " points");
}
public void addScore()
{
McMurchyScore give = new McMurchyScore();
give.setScore(sides);
}
public void setScore(double sides)
{
score = score + sides;
System.out.println("You now have a total " + score + " points");
}
每次调用 addScore() 时,它都会创建一个新的 McMurchyScore 对象(我假设它从 0 分开始),因此如果您希望它们继续添加到同一个。
每次我 运行 我的代码分数总是被边替换,而不是像预期的那样增加。请记住,分配必须是面向对象的,因此所有的方法调用。该代码是游戏空闲骰子的变体。 这是所有相关代码,我已经尝试了所有我能想到的方法,我 95% 确定问题出在我的 setScore 方法中。
public void rollDice()
{
int min = 1;
int max = 6;
mult = 1;
sides = (int)Math.floor(Math.random()*(max-min+1)+min);
System.out.println("You rolled a " + sides);
sides = sides * mult;
System.out.println("You earned " + sides + " points");
}
public void addScore()
{
McMurchyScore give = new McMurchyScore();
give.setScore(sides);
}
public void setScore(double sides)
{
score = score + sides;
System.out.println("You now have a total " + score + " points");
}
每次调用 addScore() 时,它都会创建一个新的 McMurchyScore 对象(我假设它从 0 分开始),因此如果您希望它们继续添加到同一个。