JsonArray是一种轻量级的数据交换格式,逐渐成为Web API传输数据的标准方式。本文将从各个方面详解JsonArray的使用,包括创建、添加、删除、修改等各种操作。
一、创建JsonArray
创建JsonArray最常用的方式是通过解析一个JSON字符串,使用JsonArray的构造函数来创建JsonArray对象。JsonArray也可以直接通过Java的构造函数创建一个空的JsonArray对象。同时,JsonArray对象也可以通过读取输入流或者从已有的集合创建。
String json = "[{\"name\":\"Tom\", \"age\":20}, {\"name\":\"Jerry\", \"age\":18}]"; JsonArray jsonArray = new JsonArray(json); JsonArray jsonArrayEmpty = new JsonArray(); JsonArray jsonArrayFromList = new JsonArray(list);
二、添加元素
JsonArray和Java中的List非常相似,支持添加、删除、获取元素等操作。添加元素有两种方式,一种是使用JsonObject添加,一种是使用JsonPrimitive添加。
使用JsonObject添加元素的方式:
JsonObject jsonObject = new JsonObject(); jsonObject.addProperty("name", "Lucy"); jsonObject.addProperty("age", 21); jsonArray.add(jsonObject);
使用JsonPrimitive添加元素的方式:
JsonPrimitive jsonPrimitive = new JsonPrimitive(100); jsonArray.add(jsonPrimitive);
三、获取元素
获取JsonArray中的元素非常简单,可以通过下标获取指定位置的元素,也可以通过迭代器遍历所有元素。
通过下标获取字符串类型的元素:
String name = jsonArray.get(0).getAsJsonObject().get("name").getAsString(); String age = jsonArray.get(0).getAsJsonObject().get("age").getAsString();
通过迭代器遍历JsonArray中的元素:
Iteratoriterator = jsonArray.iterator(); while (iterator.hasNext()) { JsonElement element = iterator.next(); System.out.println(element.toString()); }
四、修改元素
JsonArray修改元素的方式和List类似,可以通过下标设置指定位置的元素,也可以通过JsonObject中的add、remove、replace等方法修改元素。
通过下标修改元素:
jsonArray.set(1, new JsonPrimitive("hello"));
通过JsonObject中的方法修改元素:
jsonArray.get(0).getAsJsonObject().addProperty("name", "Jack"); jsonArray.get(0).getAsJsonObject().remove("age"); jsonArray.get(1).getAsJsonPrimitive().getAsInt();
五、删除元素
JsonArray删除元素同样支持两种方式,一种是通过下标删除指定位置的元素,一种是通过JsonObject中的remove方法删除指定的元素。
通过下标删除元素:
jsonArray.remove(0);
通过JsonObject中的remove方法删除元素:
jsonArray.get(0).getAsJsonObject().remove("name");
六、转化为字符串
需要将JsonArray转化为字符串可以使用JsonArray中的toString方法。这一点和其他Json相关的对象非常类似。
String jsonString = jsonArray.toString();
七、总结
本文详细阐述了JsonArray的创建、添加、获取、修改、删除以及转化为字符串的各种操作。JsonArray被广泛应用于Web API的数据交换,通过掌握JsonArray的使用,能够轻松编写出符合要求的Web API。