所以我现在正在尝试制作一个简单的RPG游戏,这是我的第一次,所以我正在学习哈哈,但我的问题是,我试图在另一个类中引用一个变量来为玩家选择他们的类。附:我无法弄清楚要查找什么,所以如果这是一个重复的问题,我很抱歉。
这是主要的
public static void main(String[] args) {
Scanner inputRace = new Scanner(System.in);
player player1 = new player(race.valueOf(inputRace), profession.ranger);
}
这是我试图引用的race
类
public enum race {
orc, elf, human, dwarf
}
所以我所要做的就是能够接受用户的输入,就像种族一样。(“无论他们的选择是什么”),但我无法弄明白。感谢任何帮助,如果它令人困惑,请抱歉。
答案 0 :(得分:0)
如果我理解正确,如果用户输入race.orc
,则需要orc
。
您已经走上正轨,您只需要输入用户的字符串,例如
String s = inputRace.next();
player player1 = new player(race.valueOf(s), profession.ranger);
答案 1 :(得分:0)
在其他访问输入数据时,您必须使用扫描仪方法,如next,nextInt,nextDouble等 在你的情况下,你正在寻找字符串,所以它应该是这样的:
try {
Race race = Race.valueOf( inputRace.next() ); // next returns string
Player player1 = new Player(race, profession.ranger);
} catch ( IllegalArgumentException ex ) {
System.err.println( "That race doesn't exsist" );
}
请注意,我在Race和Player中使用了大写字母,这是命名类的标准方法。
此外,您应该将代码置于某种循环中,直到他没有写出正确的种族。