Java 語(yǔ)言中,對(duì)象可以被序列化為 JSON 數(shù)據(jù)格式,而不使用第三方庫(kù)。Java 自帶的 JSON 庫(kù)是 JSONObject 和 JSONArray。
首先,我們需要將 Java 對(duì)象轉(zhuǎn)變?yōu)?JSONObject 對(duì)象。可以這樣做:
JSONObject jsonObject = new JSONObject(); jsonObject.put("name", "Tom"); jsonObject.put("age", 18);
在上面的代碼中,我們首先創(chuàng)建了一個(gè) JSONObject 對(duì)象,然后添加了兩個(gè)鍵值對(duì),鍵分別為 "name" 和 "age",值分別為 "Tom" 和 18。這里需要注意的是,如果值是字符串類(lèi)型,需要加上雙引號(hào);如果是數(shù)值類(lèi)型,不需要加雙引號(hào)。
接下來(lái),我們需要將 JSONObject 轉(zhuǎn)換為字符串。可以這樣做:
String jsonString = jsonObject.toString();
這里的 jsonString 就是轉(zhuǎn)換后的 JSON 字符串。
如果我們需要將多個(gè) Java 對(duì)象轉(zhuǎn)換為一個(gè) JSONArray 對(duì)象,可以使用以下代碼:
JSONObject jsonObject1 = new JSONObject(); jsonObject1.put("name", "Tom"); jsonObject1.put("age", 18); JSONObject jsonObject2 = new JSONObject(); jsonObject2.put("name", "Jack"); jsonObject2.put("age", 20); JSONArray jsonArray = new JSONArray(); jsonArray.add(jsonObject1); jsonArray.add(jsonObject2);
在這個(gè)例子中,我們創(chuàng)建了兩個(gè) JSONObject 對(duì)象,并將它們添加到了一個(gè) JSONArray 對(duì)象中。需要注意的是,JSONArray 中只能添加 JSONObject,如果需要添加其他類(lèi)型的數(shù)據(jù),需要先轉(zhuǎn)換為 JSONObject 對(duì)象。
最后,我們也需要將 JSONArray 轉(zhuǎn)換為字符串:
String jsonString = jsonArray.toString();
這樣,我們就可以將 Java 對(duì)象序列化為 JSON 數(shù)據(jù),不依賴(lài)于任何第三方庫(kù)。