gpt4 book ai didi

java - 无法从 Map 转换为 Map>>

转载 作者:行者123 更新时间:2023-11-30 05:50:56 30 4
gpt4 key购买 nike

我正在升级以下代码:

return this.getMethod().execute(mp);

execute 方法有签名的地方:

public Map<String,Object> execute(Object mp)

我的代码期望方法的返回值是 Map<String, List<Map<String, String>>> ,但编译器在转换时感到窒息。那么我可以/如何让它正确转换吗? Java 5 和 6 之间是否有任何变化使这现在成为编译时问题?

最佳答案

只要您确定返回的映射将只包含类型为 List<Map<String, String>> 的值,那么你需要使用双重转换:

Map<String, Object> map = this.getMethod().execute(mp);
@SuppressWarnings("unchecked") //thoroughly explain why it's okay here
Map<String, List<Map<String, String>>> mapWithNarrowedTypes =
(Map<String, List<Map<String, String>>>)(Map<?, ?>)map;
return mapWithNarrowedTypes;

关于java - 无法从 Map<String,Object> 转换为 Map<String,List<Map<String,String>>>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13382361/

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