我有以下方法:
public static <T, U> T[] getKeysForValue(Map<T,U> map,U value){
if(map == null || map.isEmpty()) {
return null;
}
Set<T> keys = new HashSet<T>();
for (Map.Entry<T,U> entry : map.entrySet()) {
if (entry.getValue().equals(value)) {
keys.add(entry.getKey());
}
}
return keys.toArray(new T[keys.size()]);
}
我在线上遇到编译错误:keys.toArray(new T[keys.size()])
,上面写着“无法创建 T 的通用数组”,这很明显。我该如何解决这个问题?