この記事では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());