JSON(JavaScript Object Notation)是一種輕量級的數據交換語言,常用于Web應用程序中的數據傳輸。GSON是Google提供的Java庫,可以將JSON串轉換成Java對象或者將Java對象轉換成JSON串。在GSON庫中,我們可以將一個JSON字符串轉換成一個JSON數組。
//JSON字符串 String jsonStr = "[{\"name\":\"Tom\",\"age\":18},{\"name\":\"Lucy\",\"age\":20}]"; //使用GSON將JSON字符串轉換成JSON數組 JsonArray jsonArray = new JsonParser().parse(jsonStr).getAsJsonArray();
在上面的代碼中,我們首先定義一個JSON字符串,該字符串包含兩個JSON對象,每個JSON對象有兩個屬性name和age。然后我們使用GSON庫中的JsonParser()方法將JSON字符串解析成JsonArray類型的對象。JsonArray類是GSON庫中的API,用于操作JSON數組數據。getAsJsonArray()方法用于將JSON字符串轉換成JSON數組類型。
現在我們來看看JsonArray類的一些常用方法:
- size() - 返回JSON數組中元素的數量
- get(int index) - 返回指定索引處的JSON元素
- getAsJsonPrimitive() - 用于獲取基本類型的JSON元素
- getAsJsonObject() - 用于獲取JSON對象類型的元素
//遍歷JSON數組 for (int i = 0; i < jsonArray.size(); i++) { //獲取每一個JSON元素 JsonObject jsonObject = jsonArray.get(i).getAsJsonObject(); //獲取JSON元素中的屬性 String name = jsonObject.get("name").getAsString(); int age = jsonObject.get("age").getAsInt(); }
在上面的代碼中,我們使用for循環遍歷JSON數組中的所有元素。get(int index)方法用于獲取指定索引處的JSON元素,getAsJsonObject()方法用于將JSON元素轉換為JSON對象類型。然后我們使用get()方法獲取JSON對象中的屬性值,getAsString()方法用于獲取字符串類型屬性值,getAsInt()方法用于獲取整型類型屬性值。
使用GSON將JSON字符轉換成JSON數組非常簡單,我們可以從JSON數組中獲取到元素的數量、元素的屬性和元素的類型。這為我們處理從Web應用程序中獲取到的JSON數據提供了極大的便利。
上一篇c 泛型轉換成json