Я попытался реализовать простую древовидную карту для подсчета вхождений целых чисел, но она дает мне NullPointerException
, и я не знаю, как это исправить.
Exception in thread "main" java.lang.NullPointerException
at exercises.CountOccurances_20_07.main(CountOccurances_20_07.java:21)
Вот код:
import java.util.Map;
import java.util.Set;
import java.util.TreeMap;
public class CountOccurances_20_07
{
public static void main(String[] args)
{
int[] list = {2, 3, 40, 3, 5, 4, 3, 3, 3, 2, 0};
Map<Integer, Integer> map = new TreeMap<Integer, Integer>();
for(int i: list)
{
int key = list[i];
if(list.length > 1)
{
if(map.get(key) == 0)
{
map.put(key, 1);
}
else
{
int value = map.get(key).intValue(); // line 21
value ++;
map.put(key, value);
}
}
}
//get all entries into set
Set<Map.Entry<Integer, Integer>> entrySet = map.entrySet();
//get key and value from entry set
for(Map.Entry<Integer, Integer> entry: entrySet)
System.out.println(entry.getValue() + "\t" + entry.getKey());
}
}