JsonObject 是 Gson 库中的一个类,它表示 JSON 数据中的一个对象。以下是 JsonObject 类的一些常用方法及其详细解释和代码案例:
1.addProperty(String memberName, String value)
- 向
JsonObject
中添加一个键值对,其中值是字符串。 - 参数:
memberName
- JSON 对象中的键;value
- 键对应的值。
JsonObject jsonObject = new JsonObject();
jsonObject.addProperty("name", "John Doe");
2.addProperty(String memberName, Number value)
- 向
JsonObject
中添加一个键值对,其中值是数字。 - 参数:
memberName
- JSON 对象中的键;value
- 键对应的值。
jsonObject.addProperty("age", 30);
3.addProperty(String memberName, Boolean value)
- 向
JsonObject
中添加一个键值对,其中值是布尔值。 - 参数:
memberName
- JSON 对象中的键;value
- 键对应的值。
jsonObject.addProperty("isEmployee", true);
4.add(String memberName, JsonElement value)
- 向
JsonObject
中添加一个键值对,其中值是JsonElement
类型。 - 参数:
memberName
- JSON 对象中的键;value
- 键对应的值。
JsonElement element = new JsonPrimitive("New York");
jsonObject.add("city", element);
5.get(String memberName)
- 根据键名获取
JsonObject
中的JsonElement
。 - 参数:
memberName
- 要获取的键名。 - 返回值:对应的
JsonElement
对象。
JsonElement nameElement = jsonObject.get("name");
6.getAsJsonPrimitive(String memberName)
- 获取
JsonObject
中指定键名对应的JsonPrimitive
。 - 参数:
memberName
- 要获取的键名。 - 返回值:
JsonPrimitive
对象。
JsonPrimitive agePrimitive = jsonObject.getAsJsonPrimitive("age");
7.getAsJsonObject(String memberName)
- 获取
JsonObject
中指定键名对应的嵌套JsonObject
。 - 参数:
memberName
- 要获取的键名。 - 返回值:嵌套的
JsonObject
对象。
JsonObject addressObject = jsonObject.getAsJsonObject("address");
8.getAsJsonArray(String memberName)
- 获取
JsonObject
中指定键名对应的JsonArray
。 - 参数:
memberName
- 要获取的键名。 - 返回值:
JsonArray
对象。
JsonArray hobbiesArray = jsonObject.getAsJsonArray("hobbies");
9.remove(String memberName)
- 从
JsonObject
中移除指定的键值对。 - 参数:
memberName
- 要移除的键名
jsonObject.remove("isEmployee");
10.toString()
- 将
JsonObject
转换为 JSON 格式的字符串。
String jsonString = jsonObject.toString();
这些方法提供了一种灵活的方式来创建和操作 JSON 对象,允许你添加、获取和移除键值对,以及将对象转换为字符串。上述代码示例展示了如何使用 JsonObject
来处理 JSON 数据,包括添加属性、获取值、创建嵌套对象和数组,以及转换为字符串。
11.构造方法
JSONObject()
:创建一个空的 JSONObject 对象。JSONObject(String json)
:通过一个 JSON 字符串来创建 JSONObject 对象。
12.键值对操作方法
put(String key, Object value)
:将键值对添加到 JSONObject 中。get(String key)
:根据键获取对应的值。remove(String key)
:移除指定键的键值对。opt(String key)
:与get
类似,但如果键不存在则返回null
而不是抛出异常
13. 集合操作方法
keys()
:返回一个迭代器,用于遍历所有的键。length()
:返回 JSONObject 中键值对的数量。