android - 获取具有非固定键的对象的属性
问题描述
假设我从 webservice 得到这个 JSon 响应:
{
"id":13,
"name":"Alireza",
"required_id":"14",
"all_friends_id_and_name":{
"28":"Hassan",
"21":"Mohammad",
"68":"Ali",
"14":"Taha",
"96":"Darya"
}
}
在此响应required_id
值中指定我需要一个 id 为 14 的朋友姓名,因此在all_friends_id_and_name
对象中我应该获取“14”(Taha)的值并在我的应用程序中使用它。
我正在使用 retrofit2 和 gson 库。
如何获取具有非固定键的对象的属性?
解决方案
对于本机方法,您可以尝试使用Iterator
.
迭代器是一个对象,它使程序员能够遍历容器,尤其是列表。
"all_friends_id_and_name":{
"28":"Hassan",
"21":"Mohammad",
"68":"Ali",
"14":"Taha",
"96":"Darya"
}
对于上述部分,您LOGIC
将
JSONObject jsonData = new JSONObject("Json_response");
Iterator iteratorObj = jsonData .keys();
while (iteratorObj.hasNext())
{
String str_json_Key = (String)iteratorObj.next();
// Print=28,21....96
}
推荐阅读
- pdf - 将可填写的 pdf 嵌套到新的 pdf 文档中
- r - ggplot 多列(一些列有很多 NaN),在 r 的一个图中带有线和点
- spring-boot - Spring Cloud Config Server 无法使用 SSH 克隆私有 Git 存储库
- java - JsonIgnore 除了一个端点
- json - AWS Spectrum 扫描错误压缩文件意外结束
- objective-c - 背景可在 5.5 和 6.5 英寸 iPhone 设备上完美缩放
- react-native - 使用 useEffect 进行条件渲染和堆栈导航
- python - Scikit 高斯过程预测
- reactjs - 如何使用 React-Select 分阶段控制选择框的 defaultValue?
- python - 机器人框架需要在第二个测试用例中使用相同的内部文本值