随笔-0  评论-2  文章-61  trackbacks-0
  1. java里有关String 的问题比较有代表性,下面我摘抄了写文章,有关String的一些问题,希望能对大家有用:
    Java里面,类的对象都是用句柄来访问的,就像C里面的指针。
    而在Java里面有两个比较相等的方法一个是用“==”,另一个是String
    里面的equals()方法,两个的区别是,前者比较的是地址,后者比较的
    是内容。
    例如你写了这样的一个语句
    String str1,str2;
    那就是定义了两个指向不同String实例的句柄,现在他们都是指向null
    的所以str1==str2==null,此时你不能用length()方法,因为,他们
    都没有指向具体的对象,如果调用这个方法的话,会返回一个
    NullPointerException。
    之后,如果你写了这样的语句
    str1=new String();
    那么str1将指向一个具体的String实例,所以str1!=str2,str1!=null,
    而且更重要的是str1!="",因为""与str1所指的是两个不同的地址。
    但方法str1.length()的返回值就是0了,也就是字符串为空。
    同样即使你再这样写
    str2=new String();
    这个时候依然是str1!=str2,因为他们指向的是两个不同的地址,
    但如果你用str1.equals(str2)的话,返回值就是true,因为他们的内
    容相同,都为空。
posted on 2006-12-22 09:13 comchyi 阅读(318) 评论(0)  编辑  收藏

只有注册用户登录后才能发表评论。


网站导航: