Java中,JSON是一種常用的數據格式,尤其是在網絡數據傳輸和存儲中。有時候,JSON數據可能會有多個層級的結構,例如:
{ "name": "John", "age": 25, "address": { "street": "123 Main St", "city": "New York", "state": "NY", "zip": "10001" } }
這個例子中,數據有兩個層級:最外層有三個屬性(name, age, address)和一個對象(address),對象又有四個屬性(street, city, state, zip)。
Java中,可以通過JsonParser或ObjectMapper等工具來解析JSON數據,并根據層級結構來獲取數據。例如:
String json = "{\"name\":\"John\",\"age\":25,\"address\":{\"street\":\"123 Main St\",\"city\":\"New York\",\"state\":\"NY\",\"zip\":\"10001\"}}"; JsonParser parser = new JsonParser(); JsonObject obj = (JsonObject)parser.parse(json); String name = obj.get("name").getAsString(); int age = obj.get("age").getAsInt(); JsonObject addressObj = obj.get("address").getAsJsonObject(); String street = addressObj.get("street").getAsString(); String city = addressObj.get("city").getAsString(); String state = addressObj.get("state").getAsString(); String zip = addressObj.get("zip").getAsString();
在這個例子中,我們首先用JsonParser將JSON數據解析為JsonObject對象,然后根據層級結構逐層獲取數據。最后,我們得到了name, age, street, city, state和zip這些數據。