gpt4 book ai didi

java - 通过反射获取 map 项

转载 作者:行者123 更新时间:2023-11-29 04:45:12 24 4
gpt4 key购买 nike

我正在尝试使用反射通过其键获取 map 值:

HashMap<String, Float> myMap = new HashMap<String, Float>();
myMap.put("time", Float.valueOf(-1.7));
String param = "time";
//...
float modif = (float)myMap.getClass().getDeclaredMethod("get", String.class).invoke(myMap, param);

但我收到此错误通知:

java.lang.NoSuchMethodException: java.util.HashMap.get(java.lang.String)

谁能告诉我为什么?

最佳答案

这里的问题是 get 方法的参数类型,它不是 String 而是 Object ,如您所见 here ,这将起作用:

float modif = (float)myMap.getClass().getDeclaredMethod("get", Object.class)
.invoke(myMap, param);

关于java - 通过反射获取 map 项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37454841/

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