我的问题与其他人类似,但对我来说有点棘手 我有一个具有静态定义变量的Class DummyData
所以,我称之为DummyData.Survey_1,它返回整个字符串值。与DummyData.Survey_2和DummyData.Survey_3类似 但问题是,当我称它们为动态时,它不会返回它们的价值。 我有一个可变数据,其值会动态变化,如(data = Survey_1或data = Survey_2或data = Survey_3) 我使用#Reflection获取其值但未能获得其值 我使用的方法我在下面帮助我解决这个问题。
Field field = DummyData.class.getDeclaredField(data);
String JsonData = field.toString();
和
DummyData.class.getDeclaredField("Survey_1").toString()
但是这返回包名,类名和字符串名但不返回字符串值。 我正在做什么可以帮助我?
答案 0 :(得分:0)
获取声明字段的值并不像那样简单。
您必须先找到该字段。然后,您必须从类的实例中获取该字段。
Field f = Dummy.class.getDeclaredField(“field”);
Object o = f.get(instanceOfDummy);
String s = (String) o;
答案 1 :(得分:0)