リストを逆シリアル化する方法
ジェネリック型を使用する場合、Google Gson での逆シリアル化で問題が発生する可能性があります。この問題は、Java の型消去メカニズムがコンパイル時に型情報を削除するため、ジェネリック型を効果的に逆シリアル化することが困難になるために発生します。
一般的なアプローチの 1 つは、TypeToken クラスの使用です。
import java.lang.reflect.Type; import com.google.gson.reflect.TypeToken; Type listType = new TypeToken<ArrayList<YourClass>>(){}.getType(); ArrayList<YourClass> yourClassList = new Gson().fromJson(jsonArray, listType);
Whenこのメソッドを使用すると、TypeToken コンストラクター内でジェネリック型を指定します。これにより、実行時の Type オブジェクトがパラメーター化された型情報を確実に取得し、Gson がジェネリック コレクションを正しく逆シリアル化できるようになります。
あるいは、TypeAdapter インターフェイスを使用して、カスタム型の逆シリアル化とシリアル化を手動で処理することもできます。ただし、このアプローチではより多くの労力とコードのメンテナンスが必要となるため、TypeToken メソッドは Gson でジェネリック型を逆シリアル化するための便利で効率的なオプションになります。
以上がGson を使用してリスト オブジェクトを逆シリアル化する方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。