1. 程式人生 > >Java之JSON處理(JSONObject、JSONArray)

Java之JSON處理(JSONObject、JSONArray)

比較 刪除 sonar map move 屬性 pri color zhang

依賴包:json-20180130.jar

MAVEN地址:

1         <dependency>
2             <groupId>org.json</groupId>
3             <artifactId>json</artifactId>
4             <version>20180130</version>
5         </dependency>

比較簡單,一看就懂,源碼如下:

 1 package json;
 2 
 3 import org.json.JSONArray;
4 import org.json.JSONObject; 5 6 import java.util.HashMap; 7 import java.util.Map; 8 9 /** 10 * JSONObject和JSONArray使用:進行JSON對象轉換和操作 11 * JSONObject:處理JSON串,多種構造方法,可用於多類型轉賬。 12 * JSONArray:JSON數組,有順序 13 */ 14 public class JsonFirst { 15 public static void main(String[] args) { 16 //
1、定義一個json對象 17 JSONObject jo = new JSONObject(); 18 jo.put("id", "1"); 19 jo.put("name", "tom"); 20 jo.put("age", "25"); 21 System.out.println("1、JSONObject: " + jo); 22 // 獲取name值 23 String name = jo.getString("name"); 24 System.out.println("查詢name:" + name);
25 26 // 2、定義一個Json數組,數組有順序 27 JSONArray ja = new JSONArray(); 28 ja.put(0, "yang"); 29 ja.put(1, "li"); 30 ja.put(2, "zhang"); 31 ja.put(4, "fouth"); 32 System.out.println("2、JSONArray數組: " + ja); 33 // 獲取第四個值 34 String fouth = ja.getString(4); 35 System.out.println("查詢第四個:" + fouth); 36 37 // 3、json中添加json對象組成復雜JSON 38 jo.put("Object", ja); 39 System.out.println("3、添加JSON對象後: " + jo); 40 41 // 4、String轉換為JSON(復雜JSON處理) 42 String str = "{\"name\":\"tom\",\"Object\":[\"yang\",\"li\",\"zhang\",null,\"fouth\"],\"id\":\"1\",\"age\":\"25\"}"; 43 JSONObject jo2 = new JSONObject(str); 44 System.out.println("4、String轉換為JSON:" + jo2); 45 System.out.println("name屬性值:" + jo2.getString("name")); 46 System.out.println("Object屬性值:" + jo2.get("Object").toString()); 47 // 刪除Object屬性值 48 jo.remove("Object"); 49 System.out.println("刪除Object屬性值:" + jo); 50 51 // 5、map和JSON轉換 52 Map<String, String> map1 = new HashMap<String, String>(); 53 map1.put("name", "Alexia"); 54 map1.put("sex", "female"); 55 map1.put("age", "23"); 56 JSONObject jo3 = new JSONObject(map1); 57 System.out.println("5.1 map轉JSON:" + jo3); 58 Map<String, Object> map2 = new HashMap<String, Object>(); 59 map2 = jo3.toMap(); 60 System.out.println("5.2 JSON轉map:" + map2); 61 62 // 6、JSONArray中添加map和JSON對象 63 JSONArray jo4 = new JSONArray(); 64 jo4.put(map1); 65 jo4.put(1, "333"); 66 jo4.put(jo); 67 System.out.println("6、JSONArray中添加map和JSON對象:" + jo4); 68 69 } 70 }

運行結果:

1、JSONObject: {"name":"tom","id":"1","age":"25"}
查詢name:tom
2、JSONArray數組: ["yang","li","zhang",null,"fouth"]
查詢第四個:fouth
3、添加JSON對象後: {"name":"tom","Object":["yang","li","zhang",null,"fouth"],"id":"1","age":"25"}
4、String轉換為JSON:{"name":"tom","Object":["yang","li","zhang",null,"fouth"],"id":"1","age":"25"}
name屬性值:tom
Object屬性值:["yang","li","zhang",null,"fouth"]
刪除Object屬性值:{"name":"tom","id":"1","age":"25"}
5.1 map轉JSON:{"name":"Alexia","age":"23","sex":"female"}
5.2 JSON轉map:{sex=female, name=Alexia, age=23}
6、JSONArray中添加map和JSON對象:[{"name":"Alexia","age":"23","sex":"female"},"333",{"name":"tom","id":"1","age":"25"}]

Java之JSON處理(JSONObject、JSONArray)