JSONObject只是一種數(shù)據(jù)結(jié)構(gòu),可以理解為JSON格式的數(shù)據(jù)結(jié)構(gòu),JSONObject可以很方便的轉(zhuǎn)換成字符串,也可以很方便的把其他對象轉(zhuǎn)換成JSONObject對象。但是大家在運(yùn)營jsonobject的時(shí)候,它的順序不對,不知道要怎么解決?下面我們就給大家講解一下。
1、由于 com.alibaba.fastjson.JSonObject 默認(rèn)是由hashMap組成的,所以內(nèi)容存放的順序并不是有序的;
如果要實(shí)現(xiàn)有序的話需要使用linkedHashMap的方式,在新建Json對象的時(shí)候要這樣寫
JSONObject jsob = new JSonObject(new linkedHashMap());
2、有時(shí)候Json的順序并不是我們想要的時(shí)候,需要進(jìn)行下倒敘,這里的思路是可以把json轉(zhuǎn)換為ArrayList然后再順序反轉(zhuǎn)
ArrayListsleepData = new ArrayList(); sleepData.addAll(sleepList); Collections.reverse(sleepData);
在這里需要注意的是ArrayList的底層是數(shù)組,在Collections.reverse()方法進(jìn)行反轉(zhuǎn)順序的時(shí)候操作的數(shù)組,會(huì)導(dǎo)致所有引用改集合的變量順序都反轉(zhuǎn)了;所以在必要的時(shí)候自己new一個(gè)對象進(jìn)行操作。
下面大家了解一下JsonObject的作用:
JsonObject 就是常說的json。是一種重要的數(shù)據(jù)傳輸對象。其格式為{"key1":value1,"key2",value2....};key 必須是字符串。
因?yàn)閍jax請求不刷新頁面,但配合js可以實(shí)現(xiàn)局部刷新,因此json常常被用來作為異步請求的返回對象使用。
通過response.getWriter()獲取PrintWriter pw,然后pw.print(json)。如果沒有設(shè)置response.setContentType("application/json; charset=utf-8"); 則需要自己再js中進(jìn)行解析。
JsonObject一些操作:
1、插入元素
JSONObject jsonObject = JSONObject.parseObject(param); kpiCfgObject.put(key, value);
2、遍歷
for (Map.Entryentry: jsonObject.entrySet()) { entry.getKey() + "&" + entry.getValue() .toString(); }
好了,今天的分享到這里就結(jié)束了,jsonobject順序不對的話,大家可以參考以上的方法,另外最為java程序員也要知道jsonobject的作用以及它的操作方法哦,最后大家如果想要了解更多json工具教程知識(shí),敬請關(guān)注賦能網(wǎng)。
本文鏈接:
本文章“jonobject順序不對怎么辦?jonobject有序排列方法”已幫助 76 人
免責(zé)聲明:本信息由用戶發(fā)布,本站不承擔(dān)本信息引起的任何交易及知識(shí)產(chǎn)權(quán)侵權(quán)的法律責(zé)任!
本文由賦能網(wǎng) 整理發(fā)布。了解更多培訓(xùn)機(jī)構(gòu)》培訓(xùn)課程》學(xué)習(xí)資訊》課程優(yōu)惠》課程開班》學(xué)校地址等機(jī)構(gòu)信息,可以留下您的聯(lián)系方式,讓課程老師跟你詳細(xì)解答:
咨詢熱線:4008-569-579