利用Gson将一串json数据转为Map格式,再get数据,相比很多人都做过。今天遇到一个“坑”,mark一下。
首先明确一点:Gson是可以将json转为Map的,并且Map的key是允许为Integer的。
public void test() {
<span style="white-space:pre"> </span>String json1 = "{\"k1\"=\"外观\",\"k2\"=\"大厅\"}";
Map<String, String> map = gson.fromJson(json1, HashMap.class);
System.out.println(map.get("k1")); // 输出“外观”
Map<Integer, String> map2 = new HashMap<>();
map2.put(1, "value");
System.out.println(map2.get(1)); // 输出“value”
}
接下来,看看这个“坑”。
@Test
public void testBug() { <span style="white-space:pre"> </span>String json2 =