我这边使用的fastjson
某些应用场景需要使用到JOSNObject,并且对toString()之后字符串中key排序有要求。
JSONObject object=new JSONObject();
object.put("aaa",111);
object.put("bbb",222);
object.put("ccc",333);
object.put("ddd",444);
如此toString之后结果:
{"aaa":111,"ddd":444,"ccc":333,"bbb":222}
并不是放置的顺序
如果想依照放置的顺序来进行输出其实很简单:
JSONObject object=new JSONObject(true);
object.put("aaa",111);
object.put("bbb",222);
object.put("ccc",333);
object.put("ddd",444);
输出结果:
{"aaa":111,"bbb":222,"ccc":333,"ddd":444}
new JSONObject时默认为false
也可以看方法:
JSONObject.toJSONString(json, SerializerFeature.SortField)