欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

java json 遍歷獲取key

劉柏宏1年前8瀏覽0評論

在Java中,使用JSON格式來表示數據已經變得越來越流行了。JSON數據由key和value組成,key與value之間由冒號隔開,不同key-value之間由逗號隔開。在Java程序中,我們需要遍歷JSON數據中的key,以便獲取相應的value值。

{
"name": "Tom",
"age": 18,
"address": {
"province": "Guangdong",
"city": "Shenzhen"
}
}

在上面的JSON數據中,我們可以通過遍歷獲取到name、age、address三個key。下面是在Java中遍歷JSON數據中key的代碼示例。

import com.alibaba.fastjson.JSONObject;
public class JsonDemo {
public static void main(String[] args) {
String jsonStr = "{\"name\":\"Tom\",\"age\":18,\"address\":{\"province\":\"Guangdong\",\"city\":\"Shenzhen\"}}";
JSONObject json = JSONObject.parseObject(jsonStr);
for (String key : json.keySet()) {
System.out.println(key);
}
}
}

在上面的代碼中,通過FastJSON將JSON字符串轉換為JSONObject對象,然后通過遍歷遍歷每個key來獲取到對應的值。

當然,我們也可以通過遞歸的方式遍歷JSON數據中的所有key,代碼如下所示:

public class JsonDemo {
public static void main(String[] args) {
String jsonStr = "{\"name\":\"Tom\",\"age\":18,\"address\":{\"province\":\"Guangdong\",\"city\":\"Shenzhen\"}}";
JSONObject json = JSONObject.parseObject(jsonStr);
traverse(json);
}
private static void traverse(JSONObject json) {
for (String key : json.keySet()) {
System.out.println(key);
Object value = json.get(key);
if (value instanceof JSONObject) {
traverse((JSONObject) value);
}
}
}
}

在上面的代碼中,我們定義了一個遞歸函數,每次遍歷到一個JSON對象時,就調用遞歸函數來遍歷該對象內部的key。

通過上面的兩個示例代碼,可以發現在Java程序中遍歷JSON數據中的key并不是很難。不過需要注意的是,當JSON數據結構復雜時,遍歷的代碼也會變得相對復雜。