好吧,虽然很多人告诉我语法和逻辑是正确的,但我似乎无法让它工作。谁能告诉我我可能做错了什么?
public Scanner in = new Scanner(System.in);
public void movePlayer() {
System.out.print("move: ");
String str = in.nextLine();
in.nextLine();
char c = str.charAt(0);
if (c == 'l' || c == 'L') {
player.moveLeft();
}
}
程序在 char 处被捕获 c = str.charAt(0);
我收到此错误:
java.lang.StringIndexOutOfBoundsException: 字符串索引超出范围:0(在 java.lang.String 中)
最佳答案
您没有通过控制台输入任何内容,因此 str
为空。这就是 chatAt(0)
抛出异常
关于java - 无法让 charAt(0) 工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10382845/