public static void wordCounter(String target,BufferedReader source) throws IOException {
HashMap<String, Integer> map = new HashMap<String, Integer>();
while(source.readLine() != null) {
String row = source.readLine();
String[] separated = row.split(" ");
for (int i=0; i< separated.length;i++) {
separated[i] = separated[i].replaceAll("=+-!?'\".,:;", "");
}
for (int i=0; i< separated.length;i++) {
if (map.containsKey(separated[i])) {
int k = (Integer) map.get(separated[i]);
map.put(separated[i], (k+1));
}
else {
map.put(separated[i], 1);
}
}
}
if (map.containsKey(target)) {
System.out.println("Target word:" + target +
"\nAppears: " + map.get(otsitavSona) + " times.");
}
else {
System.out.println("Target word not found in source.");
}
}
這是我創建的一種方法,用於從源讀取並映射所有不同的單詞,然後返回指定單詞出現的次數。問題是在線String[] separated = row.split(" ");
我得到一個NullPointerException。是什麼導致了這個問題,我該如何解決這個問題?NullPointerException從文本中讀取
謝謝。
謝謝您闡述,現在我明白了。 –