我从自动化的JUnit 4单元测试软件中得到了一个错误,我的课程讲师使用该软件自动检查作业。
我们把草稿代码上传到云程序测试器,它会自动检查并给作业打分。
这是第一学期的第一周。我以前从来没有用Java写过代码。课程中也没有教if/else,while,循环,开关等,所以我认为使用这些是不好的(它们会出现在下一个模块中)。
我遵循了一个类视频教程,它在教程中没有抛出任何异常--所以我不知道发生了什么。
这个单元是关于变量,输入,打印输出,布尔,运算符,以及一些东西,比如包含,替换,等于等等。
注意:我可以根据讲师的要求在StackOverflow上提问。
错误为:java.util.NoSuchElementException:未找到行
测试软件中没有指定异常发生的行号,而且由于它不在我的IDE中发生,我不知道它在哪里。
我发现的其他解决方案需要while和其他我不应该使用的方法。
我的代码(如下)在学校提供的VSCODEIDE云中运行良好。
import java.util.Scanner;
public class ContainsAnyCase {
public static void main(String[] args) {
System.out.println("Type a word:\n");
Scanner userInputWord = new Scanner(System.in);
String word = userInputWord.nextLine();
String wordlc = word.toLowerCase();
System.out.println("Type a sentence:\n");
Scanner userInputSentence = new Scanner(System.in);
String sentence = userInputSentence.nextLine();
String sentencelc = sentence.toLowerCase();
boolean isContains = sentencelc.contains(wordlc);
System.out.println(isContains);
}
}
我想知道是否有人可以解释为什么会出现错误,以及是否有方法修复或避免错误,而无需进入未来模块的领域?此外,我仍在学习如何正确使用堆栈溢出。如果我问错了问题,请告诉我如何改进我的问题或帖子。谢谢。
我希望程序能告诉我这个词是否在句子中。在我的IDE中,它工作了。当我把它上传到JUnit 4时,它说java.util.NoSuchElementException:未找到行
1条答案
按热度按时间kxe2p93d1#
这里有一个例子,只使用一个扫描仪的建议,在评论。
我还删除了小写的第二组变量;只需将输入直接转换为小写,并将其存储在原始变量中:
如果你需要保留用户输入的内容,那么你可以只在调用contains()时转换为小写,如下所示: