2013-11-27 56 views
1

我創建一個方法的.txt文件複製到一個私有類變量,它拷貝一個.txt文件到一個私有類變量但是我得到一個運行時錯誤:試圖使用緩衝讀者

java.lang.NullPointerException 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) 
    at java.lang.reflect.Method.invoke(Method.java:597) 
    at edu.rice.cs.drjava.model.compiler.JavacCompiler.runCommand(JavacCompiler.java:272) 

我似乎無法找到我的代碼有任何問題。任何幫助將不勝感激。

import java.util.*; 
import java.io.*; 
public class WordList 
{ 
    private ArrayList<String> words; 
    public void main(String[] args) 
    { 
    } 
    public void arrayListConstructor(String[] args) throws IOException 
    { 
    this.words = new ArrayList<String>(); 
    BufferedReader br = new BufferedReader(new FileReader("Cities.txt")); 
    String line = br.readLine(); 
    while (line != null) 
    { 
     this.words.add(line); 
     line = br.readLine(); 
    } 
    br.close(); 
    } 
} 
+0

哪條線導致NPE? – Blub

+0

@peeskillet這會有什麼好處呢?這是相同的代碼,只是不好的風格(分支測試中的副作用)。 – erickson

+0

有沒有任何代碼是你正在離開的'main'? –

回答

2

修復你的類的主要特徵

public static void main (String [] args) 
+0

哈,打我。 +1爲快速:D – JustDanyul

+0

@JustDanyul有趣的事情,我只是想每天獲得200的徽章運行,但我很慢,並在185.卡住,所以實際上我不夠快。 – auselen

1

如果你想以執行主要方法,那麼它應該是靜態的。那麼你的arrayListConstructor方法