int votes = mapList.stream().mapToInt(map -> (int) map.get("votes")).sum();报错java.lang.ClassCastException: java.lang.Long cannot be cast to java.lang.Integer
时间: 2024-01-13 19:31:55 浏览: 79
java.lang.ClassCastException
4星 · 用户满意度95%
这个错误可能是由于"votes"字段的类型不一致导致的。在代码中,您将"votes"字段转换为整数类型`(int)`,但实际上它可能是长整型`(Long)`。
为了解决这个问题,您可以尝试将"votes"字段转换为长整型`(Long)`,然后再将其转换为整数类型。以下是修改后的代码:
```java
int votes = mapList.stream()
.map(map -> (Long) map.get("votes"))
.mapToInt(Long::intValue)
.sum();
```
在这个修改后的代码中,我们首先将"votes"字段转换为长整型`(Long)`,然后使用`mapToInt`方法将其转换为整数类型。这样就可以避免出现将长整型`(Long)`直接转换为整数类型`(int)`时的错误。
希望这次能解决您的问题!如果还有其他疑问,请随时提问。
阅读全文