gpt4 book ai didi

java - 转换泛型类型的 map 列表

转载 作者:行者123 更新时间:2023-12-02 11:23:51 24 4
gpt4 key购买 nike

我正在尝试使用龙头的 ConfigurationSection#getMapList 其类型为 <java.util.List<java.util.Map<?,?>>> .

我知道在这种特定情况下,它返回的值将是以下类型
List<Map<String, List<Integer>>> .

所以我写了这个:

List<Map<String, List<Integer>>> configSpawnpoints = this.getConfig().getMapList("key");

但出现错误:

incompatible types: java.util.List<java.util.Map<?,?>> cannot be converted to
java.util.List<java.util.Map<java.lang.String,java.util.List<java.lang.Integer>>>

我怎样才能转换我的List<Map<?,?>>List<Map<String, List<Integer>>>

最佳答案

此处返回的通配符意味着 API 无法保证它知道映射中将包含哪些类型。此外,您不能强制它在编译时进行强制转换,因为没有具体的保证。您最好的希望是当您想要访问它并在运行时处理错误时将其手动转换为 Map

List<Map<?, ?>> configSpawnpoints = this.getConfig().getMapList("key");
// to use it
Map<Integer, List<String>> mapPoint = (Map) configSpawnpoints.get(0);

关于java - 转换泛型类型的 map 列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49736112/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com