GSONでArrayListを扱う方法 | Java

※当サイトはアフィリエイト広告を利用しています。

GSONはオブジェクトをJSON文字列に変換し、逆に生成したJSON文字列をオブジェクトに戻すことができる非常に便利なライブラリですが、ArrayListに関しては少し注意が必要です。

この記事ではGSONでArrayListを扱う方法を紹介します。
スポンサーリンク


ArrayListオブジェクトをJSONに変換する場合

ArrayListオブジェクトをJSONに変換する場合は特に注意は不要で、他のオブジェクトと同じようにJSON文字列に変換すればOKです。

サンプルコードは以下です。
ArrayList<YourClass> list;
String json = gson.toJosn(list);

JSONをArrayListオブジェクトに変換する場合

さきほどと異なりこちらは通常の変換と表記が異なるので注意が必要です。

通常のオブジェクトであれば、以下のように変換できます。
int value = gson.fromJson(json, Integer.class);
一方でArrayListの場合には上記ではエラーとなります。ArrayListの場合には以下のように記述することで問題なく変換できるようになります。
ArrayList<YourClass> list = gson.fromJson(json, new TypeToken<ArrayList<YourClass>>(){}.getType());

まとめ

この記事ではGSONでArrayListを扱う方法を紹介しました。