我需要生成一个内部有许多对象的JSON,并且每个对象都有一个字符串数组。我正在使用Java,更具体地说是Android。
我想制作如下内容:
\
我有一个Bean类,它有这个管理器和产品数组信息,我很难看到它如何适合我的AsyncTask类
答案 0 :(得分:1)
我建议不要在钥匙上附加数字。这只会弄乱你的java类。
使用列表表示所有内容。
{
"managers": [
{
"name": "manager1",
"products": ["xxx", "yyy", "zzz"]
},
{
"name": "manager2",
"products": ["xxx", "yyy", "zzz"]
}
]
}
你POJO / bean看起来像这样
class Foo {
List<Manager> managers;
}
class Manager {
String name;
List<String> products;
}
答案 1 :(得分:0)
如果你有对象,可以使用Gson库将对象转换为json字符串。
Gson gson = new Gson();
String json = gson.toJson(obj);
如果你在Java代码中询问类的结构,它将是android.util.Pair数组的Map。
Map<String, Pair<String, String>[]> map;
但是......你必须为Pair类创建自己的序列化器和反序列化器。你可以在这里找到答案:How do I get Gson to serialize a list of basic name value pairs?