我想創建一個散列表,它將從我的數組中獲取每個字符串並將其分配給唯一的整數值。我的數組從文件中讀取並分配到陣列像這樣:Array into HashTable
public void readFile() throws Exception{
FileInputStream in = new FileInputStream("words.txt");
BufferedReader br = new BufferedReader(new InputStreamReader(in));
String strLine;
wordsList = new String[getNumberOfLines()];
for (int j = 0; j < wordsList.length; j++){
wordsList[j] = br.readLine();
}
in.close();
}
使用這個數組我寫的方法來創建哈希表是這樣的:
String currentWord;
private Hashtable <String,Integer> wordsHashTable;
LinesReader lr = new LinesReader();
int i;
String[] listOfWords;
public boolean insertValues() throws Exception{
for (i=0; i<lr.getNumberOfLines();i++){
lr.readFile();
listOfWords = lr.returnsWordList();
currentWord = listOfWords[i];
wordsHashTable.put(currentWord, i+1);
}
return wordsHashTable.isEmpty(); //testing purposes only
}
它拋出空指針異常在行:wordsHashTable.put (currentWord,i + 1); 任何想法,我搞砸了?
謝謝!我不敢相信這是一個非常愚蠢的錯誤,並且對提示表示感謝(我們的講師說我們應該在我們的任務中使用散列表,但將來會提供參考) – Shepard