A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 喝龙血的我 中级黑马   /  2013-10-10 21:43  /  1293 人查看  /  5 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 喝龙血的我 于 2013-10-11 08:10 编辑

视屏中看到老师说 "abc".equals(str) 不好,应该用str.equals("abc")  ,但是它们区别是什么

评分

参与人数 1技术分 +1 收起 理由
To + 1 神马都是浮云

查看全部评分

5 个回复

倒序浏览
str可以是一个变量,而“abc”是一个固定字符串,用str.equals() 可以提高函数方法复用性!
回复 使用道具 举报
楼主好像记反了,推荐使用的是"abc".equals(str)
因为当 str=null 时,不会抛空指针异常,
而写成str.equals("abc")时,就会抛空指针异常。

评分

参与人数 1技术分 +1 收起 理由
To + 1

查看全部评分

回复 使用道具 举报
飘落 发表于 2013-10-10 21:58
楼主好像记反了,推荐使用的是"abc".equals(str)
因为当 str=null 时,不会抛空指针异常,
而写成str.equa ...

我也觉得楼主记反了。这样子写的目的就是为了避免NullPointerException空指针异常的发生。
回复 使用道具 举报
哦,  好像是哦 谢谢了
回复 使用道具 举报
避免出现空指针嘛  其实效率没有多大提高
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马