摘要:需要的注意版本,個(gè)別版本之間會(huì)沖突。如果當(dāng)前為,那么如果這個(gè)存在的話,這個(gè)就會(huì)移除掉。如果這個(gè)之前有,那么此方法會(huì)調(diào)用方法。親測,卻不盡然,結(jié)果并不是如上的預(yù)期的效果。
net.sf.jsonnet.sf.json 需要的 jar:
注意版本,個(gè)別版本之間會(huì)沖突。
?
package com.code.ggsddu; import net.sf.json.JSON; import net.sf.json.JSONArray; import net.sf.json.JSONObject; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; public class TestJSON { public static void main(String[] args) { /** * public Object put(Object key, Object value) * 將value映射到key下 * 如果此JSONObject對象之前存在一個(gè)value在這個(gè)key下,那么當(dāng)前的value會(huì)替換掉之前的value */ JSONObject jsonObject = new JSONObject(); jsonObject.put("one", "first"); // jsonObject: {"one":"first"} System.out.println("jsonObject: " + jsonObject.toString()); jsonObject.put("two", "second"); // jsonObject: {"one":"first","two":"second"} System.out.println("jsonObject: " + jsonObject.toString()); jsonObject.put("two", "cover"); // jsonObject: {"one":"first","two":"cover"} System.out.println("jsonObject: " + jsonObject.toString()); jsonObject.put("one", null);// value為null的話,直接移除key // jsonObject: {"two":"cover"} System.out.println("jsonObject: " + jsonObject.toString()); /** * public JSONObject accumulate(String key, Object value) * 累積value到這個(gè)key下 * 1.如果當(dāng)前已經(jīng)存在一個(gè)value在這個(gè)key下,那么會(huì)有一個(gè)JSONArray將存儲(chǔ)在這個(gè)key下來保存所有累積的value * 2.如果已經(jīng)存在一個(gè)JSONArray,那么當(dāng)前的value就會(huì)添加到這個(gè)JSONArray中 */ JSONObject jsonObj = new JSONObject(); jsonObj.accumulate("Servers", null);// 允許value為null jsonObj.accumulate("Servers", "Tomcat"); jsonObj.put("Codes", "Java"); jsonObj.accumulate("Codes", "JavaScript"); // jsonObj: {"Servers":[null,"Tomcat"],"Codes":["Java","JavaScript"]} System.out.println("jsonObj: " + jsonObj.toString()); /** * public JSONObject element(String key, Object value) */ JSONObject object = new JSONObject(); object.element("price", "500"); object.element("price", "1000"); // object: {"price":"1000"} 疑問: 這和put有何區(qū)別??? 說好的會(huì)調(diào)用accumulate呢??? System.out.println("object: " + object.toString()); } }
?
控制臺(tái)打印結(jié)果:jsonObject: {"one":"first"} jsonObject: {"one":"first","two":"second"} jsonObject: {"one":"first","two":"cover"} jsonObject: {"two":"cover"} jsonObj: {"Servers":[null,"Tomcat"],"Codes":["Java","JavaScript"]} object: {"price":"1000"}
?
疑問:net.sf.json.element :
Put a key/value pair in the JSONObject. If the value is null, then the key will be removed from the JSONObject if it is present. If there is a previous value assigned to the key, it will call accumulate.
?
大意為:將鍵/值對放到這個(gè) JSONObject 對象里面。如果當(dāng)前 value 為 null,那么如果這個(gè) key 存在的話,這個(gè) key 就會(huì)移除掉。如果這個(gè) key 之前有 value ,那么此方法會(huì)調(diào)用 accumulate 方法。
親測element ,卻不盡然,結(jié)果并不是如上的預(yù)期的效果。為什么呢?
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/68168.html
摘要:字符數(shù)組轉(zhuǎn)字符數(shù)組工具字節(jié)數(shù)組轉(zhuǎn)成進(jìn)制表示格式的字符串需要轉(zhuǎn)換的字節(jié)數(shù)組進(jìn)制表示格式的字符串前面不零格式數(shù)據(jù)互轉(zhuǎn)工具將字符串轉(zhuǎn)換成里面可能是多個(gè)對象的情 字符數(shù)組轉(zhuǎn)Stringpackage com.sunsheen.hcc.fabric.utils;/** * 字符數(shù)組工具 * @author WangSong * */...
摘要:可能是最流行的集合類型。它是一個(gè)范性有序的集合。一個(gè)無序并不支持重復(fù)的集合。接口繼承接口,集合中可以存放重復(fù)對象。集合類提供了,等高階函數(shù)去處理。我們聲明一個(gè)集合或者數(shù)組,可以轉(zhuǎn)換成相應(yīng)類型的集合。調(diào)用轉(zhuǎn)換為可變集合。 不積跬步無以至千里,不積小流無以成江海 先看看Kotlin中for循環(huán)的遍歷 fun testList(){ var StringVal = 12_...
摘要:在做測試的時(shí)候,經(jīng)常需要把一些信息輸出到控制臺(tái),但是格式上比較亂,想弄成一個(gè)類似客戶端的那個(gè)輸出格式,在參考了一些資料后自己寫了一個(gè)簡單的控制臺(tái)網(wǎng)格輸出的類,分享代碼供大家參考。使用方法暫時(shí)支持了和兩種類型的數(shù)據(jù)展示,并沒有提供功能。 在做測試的時(shí)候,經(jīng)常需要把一些信息輸出到控制臺(tái),但是格式上比較亂,想弄成一個(gè)類似SQL客戶端的那個(gè)輸出格式,在參考了一些資料后自己寫了一個(gè)簡單的控制臺(tái)網(wǎng)...
閱讀 2664·2019-08-30 15:53
閱讀 2880·2019-08-29 16:20
閱讀 1087·2019-08-29 15:10
閱讀 1028·2019-08-26 10:58
閱讀 2198·2019-08-26 10:49
閱讀 640·2019-08-26 10:21
閱讀 708·2019-08-23 18:30
閱讀 1640·2019-08-23 15:58