1
我正在做一個類遊戲我正在和無法弄清楚如何以最高的「獎勵」返回到用戶:找出最大值在枚舉
我試圖得到它do是基於玩家的殺死回報獎勵。如果他有38次擊殺,它應該只返回300次,而不是150次。
class EnumTest {
private static int playerKills = 38;
private enum KillReward {
BEGINNER(10, 150),
JUNIOR(25, 300),
EXPERT(50, 500),
CHAMPION(100, 1000);
private KillReward(int kills, int reward) {
this.kills = kills;
this.reward = reward;
}
private int kills, reward;
private int getKillsNeeded() {
return kills;
}
private int getKillReward() {
return reward;
}
}
public static void main (String[] args) {
for (KillReward k : KillReward.values()) {
if (playerKills > k.getKillsNeeded()) {
System.out.println("Kills: " + playerKills + "; Reward: " + k.getKillReward());
}
}
}
}
感謝您的迴應!我從未使用比較器。你介意讓我對使用比較器做這樣的事情有所瞭解嗎? – achauncey 2013-03-23 03:32:15
我使用上面的比較器添加了一個版本。 – Blake 2013-03-23 14:56:22
美麗......非常感謝。 – achauncey 2013-03-24 07:46:57