有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java代码双重打印一行

    char grade;
    for(int x=1; x<6; x++){
        System.out.print("Please enter your course grade here: ");
        grade = (char) System.in.read();
    }
    System.out.println("Thank you! Keep up the good work!");
}

这是我的代码,似乎是对的,但这是输出

Please enter your course grade here: A
Please enter your course grade here: Please enter your course grade here: A
Please enter your course grade here: Please enter your course grade here: A
Thank you! Keep up the good work!

顺便说一下,我输入了A。 你们有谁知道为什么会这样吗


共 (1) 个答案

  1. # 1 楼答案

    你可以试试这个:

    char grade;
    for(int x=1; x<6; x++){
        System.out.print("Please enter your course grade here: ");
        grade = (char) System.in.read();
        while (grade == '\n')
            grade = (char) System.in.read();
    }
    System.out.println("Thank you! Keep up the good work!");
    }
    

    但它还没有经过测试。理论上,它应该忽略任何新词