我正在编写一个程序来读取文件并检查每一行中的特定单词。我在下面有这段代码,但是代码不执行“if 语句”,我不确定为什么。名为“scores.txt”的文件包括:
Andy 60
Bob 87
Alice 59
这是我目前所拥有的:
public static void scoreCheck() {
Scanner scanner = new Scanner("scores.txt");
int lineNum = 0;
while (scanner.hasNextLine()) {
String line = scanner.nextLine();
lineNum++;
if(line.equalsIgnoreCase("bob")) {
System.out.println("user Found On: " + lineNum);
}
}
}
我试图让它找到用户 bob 所在的行。请提出建议。
谢谢
最佳答案
在第二次循环时,line
的值为 Bob 87
,就在检查 line.equalsIgnoreCase("bob")
,即使我们忽略大小写,“bob”也不等于“bob 87”
在你的条件下你需要做的是 line.toLowerCase().startsWith("bob")
关于java - equals()方法未从文件中检测到单词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45292837/