java String 中的==null、length()==0、=="" 理解

来源:互联网 发布:json对象解析成列表 编辑:程序博客网 时间:2024/06/07 10:57

  对于java初学者来说,String  是必须要掌握的知识点。

  今天要记录的是String 中比较模糊的几个判断,网上类似博客很多,但是纸上得来终觉浅,咱们上代码就知道了。

情景1:String a="";

 

运行结果:


情景2: String a=null;

  代码:

 

注意:类在初始化时,会将类的引用类型成员变量的值初始化为null;

运行结果:


由上图可知:

                     引用变量的值为null,其没有length()方法,没有length()方法,则证明其所指向的地址中没有存储任何内容,也就是说值为null 的引用变量,并没有指向存有值得地址,地址都没有,哪来的什么值,没有值,但是想用值得某个方法,所以就报空指针异常了。

 再来看一个效果:

        代码:


运行结果:

       

说明最后一个方法也有问题,结合上例,因为a所指向的地址中没有存储任何内容,所以使用equals则会报空指针(NullPointerException)异常,因为String 中使用equals的前提条件是双方都有内容a.equals(b),所以String a=null;表示a中没有指向一个字符串所在内存的地址值,字符串也不存在。

结束。

0 0
原创粉丝点击