我有一个程序可以执行几个不同的操作,其中一个是查找文件中的项目并在行中显示该文件的属性(有3个)。出于某种原因,这只是打印出文件中的前三个字符串,而不是查找和打印我搜索的项目。
public static void findItem() throws FileNotFoundException {
Scanner kb = new Scanner(System.in);
FileReader reader = new FileReader("read_record.txt");
Scanner fin = new Scanner(reader);
System.out.println("Enter the sku of the dvd you wish to find.");
String dvdSku = kb.next();
while (fin.hasNext()){
String nextString = fin.next();
if (nextString == dvdSku); {
String skuToFind = nextString;
String titleToFind = fin.next();
String lengthToFind = fin.next();
System.out.printf("%-10s %-15s %10s %n",skuToFind,titleToFind,lengthToFind);
break;
}
}
}
答案 0 :(得分:2)
使用等于或 equalsIgnoreCase 来比较字符串。
if (nextString.equals(dvdSku)){
除非您想在第一场比赛中停止,否则请删除您拥有的中断语句。