String 类型数组和 String 类型列表的 JSON 字符串表示是一致的,如
["Beijing","Shanghai","Guangzhou","Chengdu"]
- 1
解析如上 JSON 字符串即可以使用 String 类型数组,也可以使用 String 类型列表
1 使用 String 类型数组解析
@Test
public void test() {
Gson gson = new Gson();
String jsonStr = "[\"Beijing\",\"Shanghai\",\"Guangzhou\",\"Chengdu\"]";
String[] jsonArray = gson.fromJson(jsonStr, String[].class);
assertTrue(jsonArray.length == 4);
for (String item : jsonArray) {
if (!item.equals("Beijing")
&& !item.equals("Shanghai")
&& !item.equals("Guangzhou")
&& !item.equals("Chengdu")) {
fail();
}
}
}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
2 使用 String 类型列表解析
@Test
public void test() {
Gson gson = new Gson();
String jsonStr = "[\"Beijing\",\"Shanghai\",\"Guangzhou\",\"Chengdu\"]";
List<String> jsonList = gson.fromJson(jsonStr, new TypeToken<List<String>>() {}.getType());
assertTrue(jsonList.size() == 4);
for (String item : jsonList) {
if (!item.equals("Beijing")
&& !item.equals("Shanghai")
&& !item.equals("Guangzhou")
&& !item.equals("Chengdu")) {
fail();
}
}
}