0

我是这里的新手,刚刚在教科书中遇到了这个问题。我目前正在学习嵌套 if 语句,但我似乎无法让它工作(即使教科书说它是正确的)。这是一个猜字母游戏,但每次答案被认为“不正确”时,即使即使您输入的字母按字母顺序低于“K”。打印输出将始终显示“太高了!”。对此的任何见解将不胜感激。

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!");
            }
        }   
    }
}
4

1 回答 1

1

它有效,您可能输入的是“k”而不是大写字母“K”。如果您输入一个字母“更大”然后“K”,它将打印“不正确!太高!”。

(对于太低的字母也是如此,如果我输入“J”,它会说它太低了)。

于 2015-08-10T23:45:34.300 回答