How to convert hashmap to Array of entries
本问题已经有最佳答案,请猛点这里访问。
我有一张地图
我想把它转换成数组,但当我这样做时,我得到了:
1 2 |
1 2 3 | Entry<Character, Integer>[] t = null; map.entrySet().toArray(t); **Exception in thread"main" java.lang.NullPointerException** |
1 2 3 |
1 2 3 | Entry<Character, Integer>[] t = null; t = map.entrySet().toArray(t); **Exception in thread"main" java.lang.NullPointerException** |
那么如何将
我认为这是可行的:
1 2 |
…但是您需要一个@suppress warning注释来禁止有关不安全类型转换的警告。
我不确定你到底是怎么想的。我要做的是
当您这样做时,您将得到一个entryset,因此数据将存储为entry。
所以如果你想把它放在入口,你可以这样做:
1 2 3 4 5 |
另外请注意,在执行此操作时,您总是会得到不同的顺序,因为hashmap没有排序。
或者,您可以执行一个类来保存条目数据:
1 2 3 4 5 6 7 8 9 |
并用以下方法提取:
1 2 3 4 5 | List<Data> list = new ArrayList<Data>(); for(Entry<Character, Integer> entry : map.entrySet()) { list.add(new Data(entry.getKey(), entry.getValue())); } |