要将Json字符串转换为列表,您可以使用以下代码示例:
import com.google.gson.Gson;
import java.lang.reflect.Type;
import java.util.ArrayList;
import java.util.List;
public class JsonUtils {
private static Gson gson = new Gson();
// 将Json字符串转换为列表
public static List fromJsonToList(String jsonString, Type type) {
return gson.fromJson(jsonString, type);
}
// 将列表转换为Json字符串
public static String fromListToJson(List> list) {
return gson.toJson(list);
}
}
使用方法示例:
import java.lang.reflect.Type;
import java.util.List;
public class MainClass {
public static void main(String[] args) {
// Json字符串
String jsonString = "[{\"name\":\"John\",\"age\":30},{\"name\":\"Jane\",\"age\":25}]";
// 定义要转换的列表类型
Type listType = new TypeToken>() {}.getType();
// 将Json字符串转换为列表
List personList = JsonUtils.fromJsonToList(jsonString, listType);
// 输出列表中的对象
for (Person person : personList) {
System.out.println("Name: " + person.getName());
System.out.println("Age: " + person.getAge());
}
// 创建一个新的Person列表
List newPersonList = new ArrayList<>();
newPersonList.add(new Person("Mike", 35));
newPersonList.add(new Person("Emily", 28));
// 将列表转换为Json字符串
String json = JsonUtils.fromListToJson(newPersonList);
System.out.println("Json: " + json);
}
}
class Person {
private String name;
private int age;
public Person(String name, int age) {
this.name = name;
this.age = age;
}
public String getName() {
return name;
}
public int getAge() {
return age;
}
}
在上面的示例中,我们使用了Google的Gson库来进行Json的序列化和反序列化操作。fromJsonToList()方法将Json字符串转换为列表,而fromListToJson()方法将列表转换为Json字符串。您需要在类中定义一个与Json字符串中的对象属性匹配的Java类,例如上面的示例中的Person类。