首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

关于null值的判断有关问题

2012-11-04 
关于null值的判断问题前几天看到几个人在坛子里争论关于判断空值时null在前还是在后的问题,大约想了下有如

关于null值的判断问题
前几天看到几个人在坛子里争论关于判断空值时null在前还是在后的问题,大约想了下有如下两种情况:
一、单纯判断对象是否为空,如:

String str = null;if(null == str){//对对象的相关操作}

null在前与在后没有固定的标准,只是个人习惯的问题,至于if块中的内容肯定是不会直接去调用str上的方法,否则就没必要去做这个判断了;
二、判断对象属性是否为空或是否为某个值,如:
Map<String,String> map = new HashMap<String,String>();map.put("key", "value");if(null != map && "a".equals(map.get("val"))){//对map的操作}

判断对象属性是否为空前一定要确定对象是否为空,即逻辑与运算符前半段,该部分只是判断map对象是否为空,不涉及调用null值属性的问题,不会出现空指针,也就不存在null值在前或在后的问题了,后半段由于map.get(key)在key不存在的情况会返回空值,所有这部分一定要放在后边,否则调用null值的equals方法会出现空指针异常;
以上纯属个人见解,有点新手帖的意思,呵呵,有问题欢迎拍砖。

热点排行