我目前正在大学入门Java课程中,并且遇到了一些麻烦。上个学期,我们开始使用Python,并且我对它非常了解,并且我会说我现在在编写Python方面非常精通;但Java是另一回事。事情很不一样。无论如何,下面是我当前的任务:我需要编写一个类来搜索文本文档(作为参数传递)以查找用户输入的名称,并输出名称是否在列表中。文本文档的第一行是列表中的名称数量。 的文本文档:从用户输入中搜索文本文件中的名称列表
14
Christian
Vincent
Joseph
Usman
Andrew
James
Ali
Narain
Chengjun
Marvin
Frank
Jason
Reza
David
而且我的代码:
import java.util.*;
import java.io.*;
public class DbLookup{
public static void main(String[]args) throws IOException{
File inputDataFile = new File(args[0]);
Scanner stdin = new Scanner(System.in);
Scanner inFile = new Scanner(inputDataFile);
int length = inFile.nextInt();
String names[] = new String[length];
for(int i=0;i<length;i++){
names[i] = inFile.nextLine();
}
System.out.println("Please enter a name that you would like to search for: ");
while(stdin.hasNext()){
System.out.println("Please enter a name that you would like to search for: ");
String input = stdin.next();
for(int i = 0;i<length;i++){
if(input.equalsIgnoreCase(names[i])){
System.out.println("We found "+names[i]+" in our database!");
break;
}else{
continue;
}
}
}
}
}
我只是没有得到我预期的输出,我想不通为什么。
另外一个侧面说明;分配的要求是使用Scanner类;我知道像BufferedReader这样的东西会更有效率,我只需要遵循这个任务。 –