我有一个Java对象,它在某个地方内部有JSONObject。当使用Gson序列化对象时,我在最终结果中找到了一个新的键(map)。我发现额外的密钥是由于JSONObject。
我想知道为什么GSON序列化在序列化JSONObject与Map时有所不同。理想情况下,两者都应该给出相同的结果吗?
示例代码段:
JSONObject ab = new JSONObject();
Map<String, String> ab1 = new HashMap<>();
System.out.println("JSONObject: " + new Gson().toJson(ab));
System.out.println("Map: " + new Gson().toJson(ab1));
输出
JSONObject: {"map":{}}
Map: {}