所以基本上,我必须编写一个小程序来分配学生的分数。
它工作正常,我可以很好地进入H(高级)成绩,但是当我选择S(标准)时,它会让我回到编辑器中,我只是不知道什么是错的。
boolean isHigher = getInput().charAt(0) == 'H' || getInput().charAt(0) == 'h';
答案 0 :(得分:0)
我能想到的唯一原因是你的getInput()删除了输入,并且实际上并没有再次询问它。
在这种情况下会发生以下情况:输入不等于“H”,因此您转到或,您没有输入,因此您返回一个空字符串,您要求char
位置0 => StringIndexOutOfBoundException
。
您应该使用:
Character enteredCharacter = getInput().charAt(0);
boolean isHigher = enteredCharacter == 'H' || enteredCharacter == 'h';