我正在使用JDK 7,
如何有效转换List<Map<String,Object>> to List<Map<String,?>>
代码段如下
List<Map<String, Object>> data = fetchData(qry, providedFiltersAndParams);
List<Map<String, ?>> convertedData = new ArrayList<>();
for ( Map<String, Object> eachRow : data ) {
convertedData.add(eachRow);
}
filler.fillData(convertedData);
fecthData返回List<Map<String, Object>>
。但是,filler.fillData期望参数为List<Map<String, ?>>
我想避免创建新列表和for循环。
答案 0 :(得分:0)
尝试以下方法:
List<Map<String, Object>> data = new ArrayList<>();
filler.fillData(new ArrayList<>(data));
new ArrayList<>(data)
将对象复制到一个新的ArrayList中,该列表直接调整List<Map<String, ?>>
的签名。