1.你可以使用==或者!=操作来比较null值,但是不能使用其他算法或者逻辑操作。
2.null是Java中的关键字,它不属于任何类型,只是一种特殊的值,不是对象。看下面的例子,看结果之前大家看下会输出什么?
null的使用若执行main方法会得到什么呢?
这里我们看第二条,null是一种特殊的值,不是对象;所以这里会调用method(String s),打印出null;这里String 换成其他任意类型对象都是一样的答案。
3.null是所有引用类型的默认值。
4.null可以被转化为任何类型,输出null不会抛出任何异常。
5.null可以被转化为任何类型,所以可以调用静态方法(当然我们一般不会这么去调用);但是不能调用非静态方法,会抛出空指针异常
6.null被强转化任何类型后,它还仅仅是一个特殊值,并不属于任何类型。也就是我们String s=(String)null; null instanceof String还是返回false。
7."用String转换后的null可以进行字符串运算,这是因为字符串进行连接的时候,编译器对null进行了特别的优化,其实就是实例化StringBuilder,在调用append()方法时对null的一个特别处理,当为null时,转化为“null”,最后调用toString()返回一个String对象。
8.用八大基本类型转换后的null,不可以进行基本类型的运算,否则会出现编译或者运行错误。
本文来源:https://www.cnblogs.com/greatfish/p/5906617.html
网友评论