我正在使用 jettison 在我的网络服务中生成一个 json。我需要创建一个数组,仅出于测试目的,我在下面使用这个小程序:
public static void main(String[] args) throws Exception {
JSONObject root = new JSONObject();
JSONArray array = new JSONArray();
for (int i=0; i<5; i++) {
JSONObject o = new JSONObject();
array.put(o);
o.put("name", "leandro-" + i);
o.put("age", i*2);
}
root.put("Nomes", array);
System.out.println(root);
}
但是,输出是:
{"姓名":"[\"{\\"姓名\\":\\"leandro-0\\",\\"年龄\\":0}\",\"{\\"姓名\\ ":\\"leandro-1\\",\\"年龄\\":2}\",\"{\\"姓名\\":\\"leandro-2\\",\\"年龄\\":4}\",\"{\\"姓名\\":\\"leandro-3\\",\\"年龄\\":6}\",\"{\\"姓名\\":\\"leandro-4\\",\\"年龄\\":8}\"]"}
我想要以下清晰的字符串:
{"姓名":[{"name":"leandro-0","age":0},{"name":"leandro-1","age":2},...]}
问题是:为什么我得到带有双引号和几个反斜杠的奇怪 json?我究竟做错了什么?
提前谢谢。莱安德罗