2013-07-22 24 views
0

我真的想弄清楚這段代碼有什麼問題。 .add()和.toArray()在它們下面有紅線。有沒有其他的方式來寫這兩行?我究竟做錯了什麼?java新手:讀取文件中的單詞搜索代碼。 .add()和.toArray()給我錯誤

package prog3; 

import java.io.BufferedReader; 
import java.io.FileReader; 
import java.io.IOException; 
import java.util.*; 

public class WordList { 

    private String filename; 
    private Word[] words; 

    public WordList(String fileName) { 
     this.filename = fileName; 
    } 

    //reads in list of words and stores them internally. line by line 
    //if method reas list of words successfully, then it returns as true, otherwise false 

    public boolean readFile() { 

     try{ 
      BufferedReader read; 
      read = new BufferedReader(new FileReader(filename)); 
      String nextLine; 
      while ((nextLine = read.readLine())!= null) { 
       nextLine = nextLine.trim(); 
       read.add(new Word(nextLine)); 
      } 

      words = read.toArray(new Word[0]); 
     }catch(IOException ex){ 
      System.out.println("Caught exception: " +ex.getMessage()); 
      return false; 
     } 
     return true; 
    } 

//getList is supposed to return the list of words as an array of class Word. How do I do this??? 

public Word[] getList() { 

    } 
} 
+1

將鼠標懸停在紅線上時出現的錯誤是什麼? – hexafraction

+0

找不到符號符號:方法toArray(Word [])) location:變量讀取BufferedReader的類型 – DanielleElizabeth

+1

您需要調用add('ArrayList,而不是緩衝讀取器。 – hexafraction

回答

2

你調用一個BufferedReader,這是不可能的add(

相反,創建一個ArrayList:

ArrayList<String> list=new ArrayList<>(); 

然後用添加:

list.add(read.readLine()); 

完成後然後調用指定者與列表。

我不打算使用Word類,因爲我們使用的是文本行而不是文字。

+0

意思是代碼? – DanielleElizabeth

+0

你的意思是'list.toArray(new Word [0])'? – DanielleElizabeth

+0

不,用一個String對象數組我們不處理單詞,因爲我們是一行一行地讀 – hexafraction

1

readBufferedReader,它沒有.add().toArray()方法。看看這裏的文檔:http://docs.oracle.com/javase/6/docs/api/java/io/BufferedReader.html

也許你想將項目添加到數組或陣列列表。

+0

我刪除了給我錯誤的行,並添加了list.add(read.readLine()); 但是如何在完成時調用與數組的列表。我不知道我應該使用什麼代碼 – DanielleElizabeth

+0

如果你有一個名爲'list'的ArrayList,你可以說'list.toArray()',你的ArrayList將被轉換爲一個數組。我再次建議查看文檔。 http://docs.oracle.com/javase/6/docs/api/java/util/ArrayList.html –

相關問題