我是这里的新手,刚刚在教科书中遇到过这个问题。我目前正在学习嵌套if语句,但我似乎无法使其工作(即使教科书说它是正确的)。这是一个猜字母游戏,但每次答案都被视为"不正确" "嵌套if语句" ( if(ch< answer)System.out.println("太低了!"); )即使输入字母低于&#39的字母也永远不会被读取; K&#39 ;.打印输出将始终显示为“太高!”#34;。对此有任何见解将非常感激。
class GuessLetter {
public static void main(String args[])
throws java.io.IOException {
char ch, answer = 'K';
System.out.println("I'm thinking of a letter between A and Z.\nCan you guess it?");
ch = (char) System.in.read();
if (ch == answer) {
System.out.println("Correct!");
} else{
System.out.println("Incorrect!");
**if (ch < answer ){
System.out.println("Too low!");**
} else {
System.out.println("Too high!");
}
}
}
}
答案 0 :(得分:1)
它有效,你可能正在进入&#34; k&#34;而不是大写字母&#34; K&#34;。 如果你输入一个字母&#34;更大&#34;然后&#34; K&#34;,它将打印&#34;不正确!太高了!&#34;。
(同样适用于太低的字母,如果我输入&#34; J&#34;它会说它太低了。)