apache commons-lang.jar源码问题

zhengmj777 2009-02-24 10:01:03
在EqualsBuilder中append(Object lhs,Object rhs)是不是应该把
if (lhs == null || rhs == null) {
this.setEquals(false);
return this;
}
放在:
if (lhs == rhs) {
return this;
}
前面????
因为lhs和rhs都为null的时候,if(lhs == rhs)为true,已经return了.if (lhs == null || rhs == null)将不会起到作用!
...全文
327 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
rightrat 2009-02-24
  • 打赏
  • 举报
回复
不太清楚这里要实现什么样的逻辑功能,但是看样子类似equals(),建议楼主参照一下其他equals()方法...

按照楼主的说法,似乎应该将:
if (lhs == rhs) {
return this;
}
改为:
if(lhs != null && lhs == rhs) {
return this;
}
zhengmj777 2009-02-24
  • 打赏
  • 举报
回复
已经彻底明白了!
zhengmj777 2009-02-24
  • 打赏
  • 举报
回复
那还要if (lhs == null || rhs == null)判断做什么???那不是多此一举么!!!
rightrat 2009-02-24
  • 打赏
  • 举报
回复
if(lhs == rhs)成立时,表示两者为同一对象,或者都为null,总之是相等的。。。

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧