参见英文答案 > How to create a generic array in Java? 29个
我有一张地图
private HashMap< Character,Integer>地图;
我想将它转换为数组但是当我这样做/我得到这个:
Entryaracter,Integer> t = map.entrySet().toArray();
**Type mismatch: cannot convert from Object[] to Map.Entryaracter,Integer>**
Entryaracter,Integer>[] t = null;
map.entrySet().toArray(t);
**Exception in thread "main" java.lang.NullPointerException**
Entryaracter,Integer>[] t = new Entryaracter,Integer>[1];
map.entrySet().toArray(t);
**Cannot create a generic array of Map.Entryaracter,Integer>[] t = null;
t = map.entrySet().toArray(t);
**Exception in thread "main" java.lang.NullPointerException**
那么如何将HashMap转换为Array呢?在其他科目中找不到任何答案.
最佳答案
我认为这会奏效:
Entryaracter,Integer>[] t = (Entryaracter,Integer>[])
(map.entrySet().toArray(new Map.Entry[map.size()]));
…但是你需要一个@SuppressWarning注释来抑制关于不安全的类型转换的警告.