Maison >Java >javaDidacticiel >Comment désérialiser des objets de liste avec Gson à l'aide de TypeToken ?

Comment désérialiser des objets de liste avec Gson à l'aide de TypeToken ?

Linda Hamilton
Linda Hamiltonoriginal
2024-12-08 19:25:16236parcourir

How to Deserialize List Objects with Gson Using TypeToken?

Désérialisation de la liste Objets avec Gson

Lorsque vous tentez de transférer un objet de liste via Google Gson, des difficultés surviennent en raison de la nécessité de désérialiser les types génériques. Une approche simple consiste à utiliser la classe TypeToken.

Utilisation de la classe TypeToken

Pour capturer le type générique au moment de la compilation, utilisez la syntaxe suivante :

Type listType = new TypeToken<List<MyClass>>(){}.getType();

Désérialisation

Avec le type capturé, la désérialisation peut être effectuée comme suit :

List<MyClass> myClassList = new Gson().fromJson(result, listType);

Notes supplémentaires

  • Capture de type au moment de la compilation : TypeToken capture les types entièrement connus à la compilation time.
  • Types paramétrés : TypeToken peut représenter des types paramétrés instanciations de types génériques.
  • Sous-classe anonyme : Une sous-classe anonyme de TypeToken est nécessaire en raison de l'absence de constructeur public dans la classe.

En tirant parti la classe TypeToken, le transfert et la désérialisation de listes avec des types génériques utilisant Gson peuvent être réalisés efficacement.

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:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn