Java中关于null值的一些有关问题

Java中关于null值的一些问题

Java中关于null值的使用有一些问题需要注意:
1、在对两个值做逻辑运算时,假设xxx为一个对象的引用,xxx == null与null == xxx或者xxx != null与null != xxx是没有区别的,但是第二种写法null == xxx与null != xxx可以防止因为书写错误导致为xxx赋值为null,即xxx = null;
2、对于两个引用的相等性的比较,如xxx == null是要判断xxx是否为空的,所以此时是不能用equals方法的,因为如果xxx为空就会报空指针异常,当然也不可能或有人去写成xxx.equlas(null),这是错误的;
3、对于equals方法的使用,一般把常量写在前面,比如"abc".equals(strData),如果 strData=null,那么 strData.equals("abc");就会抛出异常,而使用 "abc".equals(strData)就只是可能返回false而已;
4、关于equals方法,equals方法是Object类的方法,在Object中equals的方法实现是用的==,也就是比较两个对象的引用指向,而String中对equals做了重写,比较的是对象内容。因此对于一个自定义的类,如果使用equals方法他是继承了Object的equals,那么与==的作用是一样的;

还有很多这样Java中的细节问题需要注意,以后遇到之后逐个添加!