Java之JsonArray用法讲解

在Java中,经常需要使用Json格式的数据结构进行数据传递和交换。JsonArray是Json中的一个数据类型,本文将讲解JsonArray的用法。

JsonArray是什么?

JsonArray是一个有序集合,其中包含了一系列的JsonElement。JsonElement是Json中的基本数据类型,可以是JsonArray、JsonObject、JsonPrimitive或JsonNull。

JsonArray的用法

创建JsonArray

可以使用JsonArray的构造函数创建一个空的JsonArray:

JsonArray jsonArray = new JsonArray();

也可以使用JsonParser来解析Json字符串并创建一个JsonArray:

String jsonStr = "[\"apple\", \"orange\", \"banana\"]";
JsonParser parser = new JsonParser();
JsonArray jsonArray = parser.parse(jsonStr).getAsJsonArray();

其中,jsonStr是要解析的Json字符串。

添加JsonElement

可以使用add方法向JsonArray中添加一个JsonElement:

JsonArray jsonArray = new JsonArray();
jsonArray.add(new JsonPrimitive("apple"));
jsonArray.add(new JsonPrimitive("orange"));
jsonArray.add(new JsonPrimitive("banana"));

获取JsonElement

可以使用get方法从JsonArray中获取指定位置的JsonElement:

JsonArray jsonArray = new JsonArray();
jsonArray.add(new JsonPrimitive("apple"));
jsonArray.add(new JsonPrimitive("orange"));
jsonArray.add(new JsonPrimitive("banana"));

JsonElement jsonElement = jsonArray.get(1);

这将获取jsonArray中下标为1的JsonElement,即"orange"。

获取JsonArray中的元素总数

可以使用size方法获取JsonArray中元素的总数:

JsonArray jsonArray = new JsonArray();
jsonArray.add(new JsonPrimitive("apple"));
jsonArray.add(new JsonPrimitive("orange"));
jsonArray.add(new JsonPrimitive("banana"));

int size = jsonArray.size();

遍历JsonArray

可以使用foreach循环遍历JsonArray中的所有元素:

JsonArray jsonArray = new JsonArray();
jsonArray.add(new JsonPrimitive("apple"));
jsonArray.add(new JsonPrimitive("orange"));
jsonArray.add(new JsonPrimitive("banana"));

for(JsonElement jsonElement: jsonArray){
    System.out.println(jsonElement);
}

这将输出JsonArray中的所有元素。

示例演示

示例1

下面是一个示例,展示如何创建一个包含多个字符串的JsonArray,并将其转化为Json字符串:

JsonArray jsonArray = new JsonArray();
jsonArray.add(new JsonPrimitive("apple"));
jsonArray.add(new JsonPrimitive("orange"));
jsonArray.add(new JsonPrimitive("banana"));

Gson gson = new Gson();
String jsonStr = gson.toJson(jsonArray);
System.out.println("JsonArray to JsonString: " + jsonStr);

输出结果:

JsonArray to JsonString: ["apple","orange","banana"]

示例2

下面是一个示例,展示如何从一个Json字符串中解析出一个JsonArray,并遍历其中的元素:

String jsonStr = "[{\"name\":\"Tom\", \"age\":18}, {\"name\":\"Mike\", \"age\":20}]";
JsonParser parser = new JsonParser();
JsonArray jsonArray = parser.parse(jsonStr).getAsJsonArray();

for(JsonElement jsonElement: jsonArray){
    JsonObject jsonObj = jsonElement.getAsJsonObject();
    String name = jsonObj.get("name").getAsString();
    int age = jsonObj.get("age").getAsInt();
    System.out.println("name: " + name + ", age: " + age);
}

输出结果:

热门推荐:

PDF电子发票识别软件,一键识别电子发票并导入到Excel中!

10大顶级数据挖掘软件!

人工智能的十大作用!

name: Tom, age: 18
name: Mike, age: 20

这个示例中,首先使用JsonParser将Json字符串解析为JsonArray。然后使用foreach循环遍历JsonArray中的每个JsonElement。对于每个JsonElement,首先使用getAsJsonObject方法将其转化为JsonObject。然后再使用get方法获取JsonObject中的数据,最终输出解析结果。

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐