如題:spa
Map map = new HashMap();
map.put("1", "A");
map.put("2", "A");
map.put("3", "A");
map.put("4", "A");
String a = map.get("5").toString();
System.out.println(a);
上面的代碼必然會發生空指針錯誤,如今我想在map若是get不出對象時,把某一個值變成0(好比說a)。不想用if (map.get("5") != null) 來判斷。由於我有10來個map,互相取值,而且裏面放的是object類型。。。。。指針
解決方法:code
法一orm
public Object get(String key) {
if (map.containsKey(key)) {
return map.get(key);
} else {
return 0;
}
}對象
法二get
String a = map.get("5") == null?"0":map.get("5").toString();
System.out.println(a);it
法三效率
Java code
public String Null2Zerro(Object obj) {
return obj== null?"0":obj.toString();
}
你再讀map值的時候調用這個方式便可。
如: Null2Zerro(map.get("5"));
效率問題你基本不用考慮。不會慢的object
以上這些是在網上找到的 方法,我只是概括。謝謝大俠 分享
map