2017-04-26 79 views
0

我正在處理一個java項目,並且卡住了。我試圖找出如何首先存儲具有幾個元素(如名,姓和ID)的人物對象。我知道可以爲對象的每個部分創建不同的集合,但是我想知道是否可以創建和查詢一個集合中的所有元素?也就是說,在將對象存儲在集合中之後,我想通過集合來查找名字,姓氏和ID。存儲和查詢集合中的對象java

這是我當前的代碼:

public static void processRecords(String filenameIn)throws Exception{ 
    Scanner input = new Scanner(new File("students_mac.txt")); //retrieves data from file and stores 
    input.nextLine(); 

    while (input.hasNextLine()) { //enters loop to process individual records and print them 
      String line = input.nextLine(); 
      String[] tokens=line.split("\t"); // splits lines by tabs 
      if(tokens.length!=4) 
       continue; 
      Person student = new Person(FirstName, LastName, ID, Year); 
      List<Person> list = new LinkedList<Person>(); 
      list.add(student); 
     } 

    List<Person> list=new LinkedList<Person>(); 
     for(Person student : list){ 
      System.out.println(student); 
     } 
+0

你只需要移動你的'LinkedList'的聲明和初始化了'while'循環之外,也刪除它下面的一個。 –

回答

0

所有你需要的是將List<Person> list = new LinkedList<Person>();出while循環。

Scanner input = new Scanner(new File("students_mac.txt")); //retrieves data from file and stores 
input.nextLine(); 

List<Person> list = new LinkedList<Person>(); 

while (input.hasNextLine()) { //enters loop to process individual records and print them 
     String line = input.nextLine(); 
     String[] tokens=line.split("\t"); // splits lines by tabs 
     if(tokens.length!=4) 
      continue; 
     list.add(new Person(FirstName, LastName, ID, Year)); 
    } 

    for(Person student : list){ 
     System.out.println(student); 
    }