Java 是一種通用編程語言,也是一種適用于網(wǎng)絡(luò)環(huán)境的語言。它被廣泛應(yīng)用于 Web 開發(fā)、網(wǎng)絡(luò)爬蟲、大數(shù)據(jù)處理等領(lǐng)域。在很多網(wǎng)絡(luò)應(yīng)用中,Java 需要處理返回的 JSON 數(shù)據(jù)。JSON 是一種輕量級數(shù)據(jù)交換格式,可以方便地在前后端傳輸數(shù)據(jù)。如何在 Java 中取出返回的 JSON 數(shù)據(jù)呢?下面介紹幾種方式。
public static String parseString(String jsonStr, String key) throws JSONException { JSONObject jsonObject = new JSONObject(jsonStr); return jsonObject.getString(key); } public static int parseInt(String jsonStr, String key) throws JSONException { JSONObject jsonObject = new JSONObject(jsonStr); return jsonObject.getInt(key); } public static double parseDouble(String jsonStr, String key) throws JSONException { JSONObject jsonObject = new JSONObject(jsonStr); return jsonObject.getDouble(key); } public static boolean parseBoolean(String jsonStr, String key) throws JSONException { JSONObject jsonObject = new JSONObject(jsonStr); return jsonObject.getBoolean(key); }
這些方法都是使用 Java 內(nèi)置的 JSONObject 類解析 JSON 數(shù)據(jù)。首先需要將 JSON 字符串轉(zhuǎn)換成一個(gè) JSONObject 對象。這里我們以“key-value”形式取出 JSON 中的數(shù)據(jù)。我們可以根據(jù)返回?cái)?shù)據(jù)的類型,使用不同的方法來取出數(shù)據(jù)。比如上面的 parseString 方法可以取出 JSON 中某一個(gè)值的字符串形式的值,parseInt 方法可以取出整數(shù)形式的值。
String jsonStr = "{\"name\":\"Tom\",\"age\":25}"; String name = JSONUtil.parseString(jsonStr, "name"); int age = JSONUtil.parseInt(jsonStr, "age");
在使用方法時(shí),我們只需要調(diào)用對應(yīng)方法并傳入 JSON 字符串和需要取出的key即可。比如上面的例子中,我們將 JSON 字符串和需要取出來的 name 和 age 作為參數(shù)傳入對應(yīng)方法中,將可以成功取出數(shù)據(jù)。
不過需要注意的是,JSON 數(shù)據(jù)的格式可以是不規(guī)則的,在取數(shù)據(jù)時(shí)需要保證 JSON 數(shù)據(jù)中的 key 存在,否則會報(bào)出 JSONException 異常。此外,在使用 JSONObject 取出數(shù)據(jù)時(shí),需要使用對應(yīng)方法才能取出正確的數(shù)據(jù)類型。