gpt4 book ai didi

java - 第一次使用 Java 跳过控制台?

转载 作者:太空宇宙 更新时间:2023-11-04 12:39:53 25 4
gpt4 key购买 nike

下面是我在 Java 中遇到问题的一段代码;它似乎把一个问题换成了另一个问题。由于空格错误,当用户输入是一个句子时,我在检索用户输入时遇到问题;我通过添加“nextLine”而不是“next”来解决这个问题。

但是现在,它不再给用户回答第一个问题的机会,而是跳过控制台框并简单地输出“错误”,然后再继续回答第二个问题,此时用户的第一个控制台框现在显示出来。

我仔细检查了:使用“next”,第一个问题的控制台显示,但使用“nextLine”,它会跳过该控制台框(不给用户输入任何内容的机会),吐出“错误”,然后转到第二个问题,用户最终可以在其中输入一些内容。

为什么要这样做?

if(nwb.equalsIgnoreCase("numbers")){
System.out.println("You must type in the rules verbatim "+
"(word for word, including punctuation), "+
"as shown on the Student Hand-Out. "+
"Capitalization does not matter.");
int count = 1;
for(int i = 0; i<=(rules.length-1); i++){
System.out.print("Rule #"+count);
String response = console.nextLine().replaceAll(" ","");
if(response.replaceAll(" ", "").equalsIgnoreCase(rules[i].replaceAll(" ", ""))){
System.out.println("CORRECT");
}else{
System.out.println("WRONG\nThe correct wording is: "+rules[i]);
}
count++;
}
}

最佳答案

阅读代码有点乏味,使用 { } 代码块格式化程序,这样更容易阅读。

尝试使用trim()函数删除输入前后的空格。

这可能是因为您已经在循环中初始化了响应字符串,请尝试将其移出并看看会发生什么。希望这会有所帮助。

关于java - 第一次使用 Java 跳过控制台?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36928045/

25 4 0
文章推荐: c++ template