由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
Java版 - Object比较
相关主题
问个Object.hashCode()的问题请教一个语法和递归的问题
问个hashtable实现问题请教一段代码,关于hashCode()
问个set和literal String的问题treemap和hashma p的问题
Re: 谁有Java或Oracle的毒招 ?我这个简单例子,怎么在actionListener里面拿到contentPane的instance?
Do I need to implement equals and hashCode in domain objectanswer Re: how HashMap/Hashtable compare key?
问HashSet的问题?Leetcode ==> Max Points on a Line, 我的程序到底哪出问题了
也问个 HashMap问题Question: reflection and generics
Java的工作面试主要考什么?主要是算法吗?大家写java class的时候是完全封装的么?
相关话题的讨论汇总
话题: object话题: equals话题: equal话题: o2话题: officer
进入Java版参与讨论
1 (共1页)
s******y
发帖数: 68
1
我记得== 只适用于数值比较
对于Object, 要用 a.equal(b)来进行比较
那么对于下面的的code, "==" 应该返回不等; "e . equal ( f )"应该返回相等
可运行的结果却是两个都不相等
== shows e and f are not equal
e . equal ( f ) shows they are not equal
这是什么原因? 谢谢
B*********h
发帖数: 800
2
o1 == o2 : only when o1 and o2 are the same object.
o1.equals(o2): implemented as {return o2 ==null ? false : o1 == o2;}by defau
lt in Object class.

【在 s******y 的大作中提到】
: 我记得== 只适用于数值比较
: 对于Object, 要用 a.equal(b)来进行比较
: 那么对于下面的的code, "==" 应该返回不等; "e . equal ( f )"应该返回相等
: 可运行的结果却是两个都不相等
: == shows e and f are not equal
: e . equal ( f ) shows they are not equal
: 这是什么原因? 谢谢

s******y
发帖数: 68
3
e.equal(f) 在这个case里, 依你说, 是应该等还是不等呢?

defau

【在 B*********h 的大作中提到】
: o1 == o2 : only when o1 and o2 are the same object.
: o1.equals(o2): implemented as {return o2 ==null ? false : o1 == o2;}by defau
: lt in Object class.

B*********h
发帖数: 800
4
were you reading my post?

【在 s******y 的大作中提到】
: e.equal(f) 在这个case里, 依你说, 是应该等还是不等呢?
:
: defau

m******y
发帖数: 102
5
你要在Officer class里override那个equals方法
只有你自己知道应该怎么判断相等的标准
否则by default用==比较 就是不相等

【在 s******y 的大作中提到】
: 我记得== 只适用于数值比较
: 对于Object, 要用 a.equal(b)来进行比较
: 那么对于下面的的code, "==" 应该返回不等; "e . equal ( f )"应该返回相等
: 可运行的结果却是两个都不相等
: == shows e and f are not equal
: e . equal ( f ) shows they are not equal
: 这是什么原因? 谢谢

s******y
发帖数: 68
6
Of course, but still a little confused, from what you said
e.equal(f) still should be true.
But why did the code return false instead

【在 B*********h 的大作中提到】
: were you reading my post?
B*********h
发帖数: 800
7
how are e and f THE same object?
e = new Officer(...);
f = new Officer(...);
different objects.

【在 s******y 的大作中提到】
: Of course, but still a little confused, from what you said
: e.equal(f) still should be true.
: But why did the code return false instead

m******y
发帖数: 102
8
As BulletTooth said,
the default impl of equals is
public boolean equals(Object obj) {
return (this == obj);
}
If u don't override, u will always get "false"...

【在 s******y 的大作中提到】
: Of course, but still a little confused, from what you said
: e.equal(f) still should be true.
: But why did the code return false instead

s******y
发帖数: 68
9
I see. Thanks you guys


【在 m******y 的大作中提到】
: As BulletTooth said,
: the default impl of equals is
: public boolean equals(Object obj) {
: return (this == obj);
: }
: If u don't override, u will always get "false"...

s******y
发帖数: 68
10
thanks a lot.

【在 B*********h 的大作中提到】
: how are e and f THE same object?
: e = new Officer(...);
: f = new Officer(...);
: different objects.

q*****g
发帖数: 72
11
one remider: always overide hashCode() method when overide() equals method

【在 s******y 的大作中提到】
: thanks a lot.
r*****l
发帖数: 2859
12
Look at the contractual relation between equals() and hash().

【在 s******y 的大作中提到】
: 我记得== 只适用于数值比较
: 对于Object, 要用 a.equal(b)来进行比较
: 那么对于下面的的code, "==" 应该返回不等; "e . equal ( f )"应该返回相等
: 可运行的结果却是两个都不相等
: == shows e and f are not equal
: e . equal ( f ) shows they are not equal
: 这是什么原因? 谢谢

1 (共1页)
进入Java版参与讨论
相关主题
大家写java class的时候是完全封装的么?Do I need to implement equals and hashCode in domain object
TIJ上写错了?问HashSet的问题?
java这个是什么逻辑?也问个 HashMap问题
Top Ten Errors Java Programmers Make(7)Java的工作面试主要考什么?主要是算法吗?
问个Object.hashCode()的问题请教一个语法和递归的问题
问个hashtable实现问题请教一段代码,关于hashCode()
问个set和literal String的问题treemap和hashma p的问题
Re: 谁有Java或Oracle的毒招 ?我这个简单例子,怎么在actionListener里面拿到contentPane的instance?
相关话题的讨论汇总
话题: object话题: equals话题: equal话题: o2话题: officer