Maison >Java >javaDidacticiel >Comment désérialiser un tableau JSON en type de liste générique en Java ?

Comment désérialiser un tableau JSON en type de liste générique en Java ?

王林
王林avant
2023-08-20 12:13:031256parcourir

Comment désérialiser un tableau JSON en type de liste générique en Java ?

La bibliothèque Gson fournit une classe appelée com.google.gson.reflect.TypeToken pour stocker les types génériques en créant une classe Gson TypeToken et en transmettant le type de classe. En utilisant ce type, Gson peut connaître la classe passée dans la classe générique.

Syntaxe

public class TypeToken<T> extends Object

Nous pouvons désérialiser un tableau JSON en une liste de types génériques dans l'exemple ci-dessous

Exemple

import java.lang.reflect.Type;
import java.util.*;
import com.google.gson.*;
import com.google.gson.reflect.*;
public class JSONArrayToListTest {
   public static void main(String args[]) throws Exception {
      String jsonStr = "[{\"name\":\"Adithya\", \"course\":\"Java\"}," + "{\"name\":\"Ravi\", \"course\":\"Python\"}]";
      Type listType = new TypeToken<ArrayList<Student>>() {}.getType();
      List<Student> students = new Gson().fromJson(jsonStr, listType);
      System.out.println(students);
   }
}
// Student class
class Student {
   String name;
   String course;
   @Override
    public String toString() {
      return "Student [name=" + name + ", course=" + course + "]";
   }
}

Sortie

[Student [name=Adithya, course=Java], Student [name=Ravi, course=Python]]

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer