Java JSON子对象

Java JSON子对象,java,json,Java,Json,有人能告诉我如何正确地将子对象插入JSONObject吗?我已经尝试了这两种实现-org.json.simple和org.json,代码如下: JSONObject obj = new JSONObject(); obj.put("key", "value"); obj.put("subobject", obj.toString()); 在这些字符串之后,除了: {"key":"value","subobject":{"key":"value"}} 但实际价值是: {\"key\":\"va

有人能告诉我如何正确地将子对象插入JSONObject吗?我已经尝试了这两种实现-
org.json.simple
org.json
,代码如下:

JSONObject obj = new JSONObject();
obj.put("key", "value");
obj.put("subobject", obj.toString());
在这些字符串之后,除了:

{"key":"value","subobject":{"key":"value"}}
但实际价值是:

{\"key\":\"value\","subobject":{"key":"value"}}
它总是在插入JSONObject时转义引号,因此我无法正确执行。当然,我可以尝试修改代码,但我想知道-真的,以前没有人问过吗?所以我猜解决方案就在我面前,但我不能仅仅看到它。请帮帮我。

简单地说

JSONObject obj = new JSONObject();
JSONObject subobj = new JSONObject();
obj.put("key", "value");
obj.put("subobject", subobj);
没有
toString()


此外,打印JSONObject的方式也会影响它的显示方式。您是否使用系统输出?还是调试器?只要可以将结果字符串再次解析为JSONObject,就不会有真正的问题,对吗

@VictorPolevoy请参见编辑后的答案。但现在我明白了:你试图把同一个对象添加到你的对象中。为什么?哦,是的,我已经意识到并删除了评论。好吧,我很快就会试试,但我打赌这是一个解决办法。给其他人的一个建议是:在编码之前先睡一觉:)