用 Gson 解析 ListString

方法 1

Gson gson = new Gson();
String json = "[ \"Adam\", \"John\", \"Mary\" ]";

Type type = new TypeToken<List<String>>(){}.getType();
List<String> members = gson.fromJson(json, type);
Log.v("Members", members.toString());

这对于大多数通用容器类很有用,因为你无法获得参数化类的类(即:你不能调用 List<String>.class)。

方法 2

public class StringList extends ArrayList<String> { }

...

List<String> members = gson.fromJson(json, StringList.class);

或者,你可以始终子类化所需的类型,然后传入该类。然而,这并不总是最佳实践,因为它将返回 StringList 类型的对象;