1.在Map中取不存在的键值对时不会报异常,只会返回null。
@Test public void testMap() { Map<String,Object> map = new HashMap<String,Object>(); map.put("d",10); // 从map中取出不存在的键值对时不会报异常,会返回null Object b = map.get("c"); System.out.println(b); }打印结果是:null。
2.在JSONObject中取不存在的键值对时分两种情况:
2.1.利用jSONObject.get(Object key)方法取不存在的键值对时不会报异常,会返回null;但是,若利用jSONObject.getxxx(String key)方法取时则会报异常:
@Test public void testJSONObject() { Map<String,10); JSONObject jSONObject = JSONObject.fromObject(map); int xx = jSONObject.getInt("d"); System.out.println(xx); // 从jSONObject中用get(Object key)方法取出不存在的键值对时不会报异常,会返回null Object y = jSONObject.get("dd"); System.out.println(y); // 从jSONObject中用getxxx(String key)方法取出不存在的键值对时报异常 String y2 = jSONObject.getString("dd"); System.out.println(y2); }