我似乎有我的扫描仪/ Eclipse自动运行用户输入。我有一台扫描仪初始化为:Java扫描仪使用旧输入
Scanner in = new Scanner(System.in);
一个菜单:
@Override
void update() {
//welcome
System.out.println("-----Welcome to the Pet Game-----");
System.out.println();
System.out.println("1. Play");
System.out.println("2. Help");
System.out.println("3. Dev Mode");
int choice = in.nextInt();
switch(choice){
case 1:
playLoop();
break;
case 2:
helpPage();
break;
case 3:
devMode();
break;
}
}
出于某种原因,它在此菜单中自动输入2。并在此菜单上跟随3:
// main menu
System.out.println("This is Day " + (i+1) + " you have " + dayActions + " Actions left.");
System.out.println("1. View Pet Status");
System.out.println("2. Shop");
System.out.println("3. Skip Action");
System.out.println("4. Play");
System.out.println("5. Feed");
System.out.println("6. Bathroom");
System.out.println("7. Sleep");
int choice = in.nextInt();
System.out.println();
我认为这可能是由于我的GameState类,但我不确定。 游戏状态类:
abstract class GameState {
abstract void update();
protected void pushState(GameState state) {
PetGame.pushState(state);
}
protected void popState() {
PetGame.popState();
}
}
StoreState(这就是它是跳跃到类在我的代码我找不到它的任何引用不知道为什么它是怎么回事。)
public class StoreState{
@Override
void update() {
// TODO Auto-generated method stub
}
}
谢谢你的帮助。
请不要**更新您的问题,因为您的问题正在解决。这完全改变了最初问题的背景。在做这件事情时,你没有在这里做任何好处。在你的原始问题下添加一个编辑部分,说明你面临的新问题。 –
@OusmaneMahyDiaw您的意图通常是正确的,但*“在原始问题下面追加编辑部分,说明您面临的新问题”*是错误的。必须在新的帖子/问题中提出一个新问题(这已经在meta上多次提出并讨论过,例如:https://meta.stackoverflow.com/questions/298948/question-answered-buta-a-新问题出现) – Tom
@Tom谢谢,还在学习你看到的^^系统。赞赏。 –