Json(JavaScript Object Notation)是一種輕量級的數據交換格式,它以鍵值對的形式存儲數據,易於閱讀與編寫。JsonArray是其中的一種數據類型,表示一個由多個對象組成的數組,本文將從多個方面闡述JsonArray轉String的方法。
一、JsonArray轉String數組
JsonArray轉String數組可以方便地將Json數據轉換為Java中的數組類型,以下是示例代碼:
JSONArray jsonArray = new JSONArray("[\"apple\", \"banana\", \"orange\"]"); int length = jsonArray.length(); String[] stringArray = new String[length]; for (int i = 0; i < length; i++) { stringArray[i] = jsonArray.getString(i); }
先通過JSONArray構造函數將Json字符串轉換為JsonArray對象,然後通過數組的長度循環遍歷JsonArray,將其中的每個元素獲取到,並存入String數組中。
二、JsonArray轉String字符串
JsonArray轉String字符串可以將JsonArray對象直接轉換為String類型,以下是示例代碼:
JSONArray jsonArray = new JSONArray("[{\"name\":\"Tom\",\"age\":18},{\"name\":\"Jerry\",\"age\":20}]"); String jsonString = jsonArray.toString();
JsonArray對象的toString方法可以將其轉換為String類型,從而方便地在網絡傳輸或存儲中使用。
三、JsonArray轉List
JsonArray轉List可以將JsonArray對象轉換為Java中的List類型,以下是示例代碼:
JSONArray jsonArray = new JSONArray("[{\"name\":\"Tom\",\"age\":18},{\"name\":\"Jerry\",\"age\":20}]"); List<JSONObject> jsonObjectList = new ArrayList<>(); for (int i = 0; i < jsonArray.length(); i++) { jsonObjectList.add(jsonArray.getJSONObject(i)); }
通過JsonArray對象的getJSONObject方法可以將其中的每個Json對象取出,並添加到Java的List中。
四、JsonArray獲取值
JsonArray獲取值可以通過給定鍵(index)獲取JsonArray中的元素,以下是示例代碼:
JSONArray jsonArray = new JSONArray("[{\"name\":\"Tom\",\"age\":18},{\"name\":\"Jerry\",\"age\":20}]"); JSONObject jsonObject = jsonArray.getJSONObject(0); int age = jsonObject.getInt("age"); String name = jsonObject.getString("name");
通過JsonArray對象的getJSONObject方法獲取到指定位置的Json對象,並通過鍵(index)獲取到其中的具體值。
五、JsonString轉Map
JsonString轉Map可以將Json字符串轉換為Java中的Map類型,以下是示例代碼:
String jsonString = "{\"name\":\"Tom\",\"age\":18}"; Type type = new TypeToken<Map<String, Object>>() {}.getType(); Map<String, Object> resultMap = new Gson().fromJson(jsonString, type);
通過新建一個TypeToken對象來指定轉換類型,然後通過Gson庫的fromJson方法將Json字符串轉換為Java中的Map對象。
六、Json轉String
Json轉String可以將Json對象或者JsonArray對象轉換為String字符串,以下是示例代碼:
JSONObject jsonObject = new JSONObject("{\"name\":\"Tom\",\"age\":18}"); String jsonString = jsonObject.toString();
Json對象和JsonArray對象都有toString方法可以將其轉換為String類型,方便在網絡傳輸或者存儲時使用。
七、JsonNode轉String
JsonNode轉String可以將JsonNode對象轉換為String類型,以下是示例代碼:
JsonNode rootNode = objectMapper.readTree("{\"name\":\"Tom\",\"age\":18}"); String jsonString = objectMapper.writeValueAsString(rootNode);
通過ObjectMapper類的readTree方法可以將Json字符串轉換為JsonNode對象,然後通過writeValueAsString方法將其轉換為String類型。
八、JsonObject轉String
JsonObject轉String可以將JsonObject對象轉換為String類型,以下是示例代碼:
JsonObject jsonObject = new JsonObject(); jsonObject.addProperty("name", "Tom"); jsonObject.addProperty("age", 18); String jsonString = jsonObject.toString();
先新建一個空的JsonObject對象,然後通過addProperty方法添加鍵值對,最後通過toString方法將其轉換為String類型。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/233789.html