当前位置: 首页 > 知识库问答 >
问题:

不存在类型变量T的实例,因此列表符合整数

袁子瑜
2023-03-14

在以下代码中:

return new HashSet<>(namedParameterJdbcTemplate.query(
    SOME_SQL_QUERY_STRING,
    parametersMap,
    (resultSet, rowNum) -> resultSet.getBigDecimal("GETID")
));

我在下得到一条红线(resultSet,rowNum)-


共有2个答案

武彭薄
2023-03-14

向方法调用添加显式强制转换

就我而言,我有

<T> Map<String, T> getMap(@NotNull String rootPath, @NotNull Class<T> type)

我用起来就像

LinkedHashMap<String,String> x = xmlRegestryFile.getMap("path/to/map/of/string", String.class)

但它失败了,给了我这个错误,所以我通过添加施法克服了这个错误

x = (LinkedHashMap<String, String>) xmlRegestryFile.getMap("my/path", String.class)
陶智
2023-03-14

基本问题是(基于代码)推断出“query”方法的另一个(不需要的)重载版本,而作为第三个参数给出的lambda(函数)不适用于此版本的“query”。

解决此问题的一种方法是通过提供类型参数“强制”使用所需的查询函数:

return new HashSet<>(namedParameterJdbcTemplate.<BigDecimal>query( ...
 类似资料: