gpt4 book ai didi

java - 尝试使用 hashmap 来计算数组中单词的频率

转载 作者:搜寻专家 更新时间:2023-10-31 08:26:23 26 4
gpt4 key购买 nike

这是我的代码:

public static void main(String args[]) throws Exception
{
BufferedReader infile = new BufferedReader(new FileReader(args[0]));
HashMap<String,Integer> histogram = new HashMap<String,Integer>();
while ( infile.ready() )
{
String SPACE = " ";
String [] words = infile.readLine().split(SPACE);

for (String word : words)
{
Integer f = histogram.get(word);
histogram.put(word,f+1);
}
}
infile.close();
printHistogram( histogram );
}
private static void printHistogram( HashMap<String,Integer> hm )
{
System.out.println(hm);
}

我不断收到“histogram.put(word,f+1);” 的 NullPointerException部分。这是为什么?

最佳答案

发生这种情况是因为如果在 map 中找不到该值,f 将为 null。在 for 循环中试试这个。

Integer f = histogram.get(word);
if (f == null) {
histogram.put(word, 1);
} else {
histogram.put(word, f+1);
}

关于java - 尝试使用 hashmap 来计算数组中单词的频率,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22927184/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com