fastjson默认是无序的

fastjson默认是无序的

Scroll Down

fastjson默认是无序的

不知道大家注意到没有,fastjson默认是无序的。我是在做参数加密的时候发现的。
JSONObject object = new JSONObject();
然后, put,put,put。
最后得到的结果和put的顺序不一致。
查看fastjson的源码:
w_b_1

w_b_2

w_b_3
可以看到构造函数根据ordered参数判断使用LinkedHashMap(有序)还是HashMap(无序)的。默认是无序的
因此,如果我们需要json是有序的话,我们可以在构造函数中传入ordered参数(true)实现。

未完待续,有问题请留言!