在使用变量时无法从 JSON 对象获取名称/值对,但在对名称进行硬编码时能够读取它。
为了更好地解释:
1) 我的 JSON 对象是这样的 - {..... { "rates":{ "name1": value1, "name2": value2 ...etc } ...}
2)我能够在我的 android 应用程序中读取这个对象。
3)现在这个速率对象名称值对,我试图根据用户输入读取 -
String s1 = '"'+name1+'"'; // here name1 i got from user input, & converted into string
4)现在当我试图从费率对象中获取值时,我得到空异常 -
JSONObject rateObject = jObject.getJSONObject("rates"); //able to get
complete object
String rate1 = (String) rateObject.get(s1); // giving NULL exception
5)但如果我使用硬编码字符串,它可以工作 -
String rate1 = (String) rateObject.get("name1"); // working
任何指针为什么它在使用变量时不起作用。
谢谢
感谢您的建议,我解决了问题。我犯了两个错误 - 1)使用其他人正确指出的引号和 2)将双精度值转换为字符串。纠正两者都解决了我的问题:)