嗨,我有这个JSON我用gson映射“用户”但我需要合并地图(在这个例子中2但可以更多)仅在1个地图或1个列表中因为我需要发送合并到自定义适配器,你可以看到我有2个用户列表,我访问每个列表用户和属性没有问题,但我需要创建只有1个地图或列表,无论如何,只有一个巩固mutivalue地图?
[{
"id": 999098,
"name": "Legendary Users",
"users": {
"98087ffg5": {
"Age": 20,
"name": "dighak"
},
"0987499gg8": {
"Age": 18,
"name": "kijhg"
},
"1231ghty56": {
"Age": 19,
"name": "ramn1"
}
}
},
{
"id": 999098,
"name": "Best Users",
"users": {
"12312bvf123": {
"Age": 20,
"name": "thispa"
},
"50827gh65": {
"Age": 21,
"name": "vista1"
}
}
}]
这是我的Response.class
public class Response {
private int id;
private String name;
private Map<String,UsersBean> users = new LinkedHashMap<>();
public int getId() {return id;}
public void setId(int id) {this.id = id;}
public String getName() {return name;}
public void setName(String name) {this.name = name;}
public Map<String,UsersBean> getUsers() {return users;}
public void setUsers(Map<String,UsersBean> users) {this.users = users;}
public static class UsersBean {
private int Age;
private String name;
public int getAge() {return Age;}
public void setAge(int Age) {this.Age = Age;}
public String getName() {return name;}
public void setName(String name) {this.name = name;}
}
}
我可以像这样访问每个用户列表
Response response;
response.get(0).getUsers().get("98087ffg5").getAge();
但是我需要一个包含所有键和各自值的用户列表的合并数据,你能帮我解决这个问题吗?我需要创建一个新的类o映射并用于循环?访问所有像:
list/map.getUsers().get("98087ffg5").getAge();
答案 0 :(得分:0)
为什么不使用Response
类的数组或arrayList?
例如,设置JSON字符串:
String jsonString = new Gson().toJson(responseArray);
...并从中得到一系列回复:
Response[] responseArray = new Gson().fromJson(jsonString, Response[].class);