黑马程序员技术交流社区

标题: 【请教】关于字符串的equals()方法? [打印本页]

作者: 李春生    时间: 2012-10-29 21:51
标题: 【请教】关于字符串的equals()方法?
求教:String str = new String("abc");
"abc".equals(str) 和 str.equals("abc") 有不同之处么?哪个更好?

作者: 刘丽娜    时间: 2012-10-29 21:56
第一个好 第一种方式不容易出现空指针
作者: 罗力    时间: 2012-10-29 22:47
刘丽娜 发表于 2012-10-29 21:56
第一个好 第一种方式不容易出现空指针

我觉得还是第二种好,一般都是用对象的引用调用相关的方法,解析传入的实参。
作者: 罗力    时间: 2012-10-29 22:49

我觉得还是第二种好,一般都是用对象的引用调用相关的方法,解析传入的实参。
作者: xuchulong1    时间: 2012-10-29 23:14
个人观点  String str = new String("abc");  
new String("abc") 是new了一块内存,里面放了   "abc"
但是直接使用的"abc"是放在常量区的一个东东,   "abc"  和  str并不是同一个东西    如果你需要用的是str然后你用了   "abc".equals这个方法 其实判断的是"abc"和你要判断的那个东西是不是同一个,对你的str完全没了作用。
这样然后去看你的问题
"abc".equals(str) 和 str.equals("abc")  可以这么想,一个是   我和你   比 一个是    你和我    比,主动和被动的关系吧




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2