java怎么比较两个对象是否相等?

 我来答
黑马程序员
2016-09-28 · 改变中国IT教育,我们正在行动
黑马程序员
黑马程序员为大学毕业后,有理想、有梦想,想从事IT行业的年轻人改变自己的命运。黑马程序员成就IT黑马
向TA提问
展开全部
断类是否相同需要判断是否是某类的实例,然后再判断是否className相同。下面给你代码你试试。
System.out.println(str instanceof Timestamp && str.getClass().getName() == Timestamp.class.getName());
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
gdmmd
2017-06-06 · TA获得超过1279个赞
知道大有可为答主
回答量:1581
采纳率:66%
帮助的人:1016万
展开全部

判断相等需要重写类中的hashcode和equals方法

以下仅供参考

package com.kidd.test.zhidao;

/**
 * Hello world!
 *
 */
public class Execute {
public static void main(String[] args) {
A a1 = new A();
a1.name = "A";

A a2 = new A();
a2.name = "B";

A a3 = new A();
a3.name = "A";

System.out.println("a1=a2? " + a1.equals(a2));

System.out.println("a1=a3? " + a1.equals(a3));
}
}

class A {

@Override
public int hashCode() {
// TODO Auto-generated method stub
return super.hashCode();
}

@Override
public boolean equals(Object obj) {
if (obj instanceof A) {
A a = (A) obj;
return a.name.equals(this.name);
}
return super.equals(obj);
}

String name;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
子弹非弹子575
2017-06-21 · TA获得超过392个赞
知道小有建树答主
回答量:450
采纳率:20%
帮助的人:187万
展开全部
String s="1";
String s1="2";
if(s==s1){
//相等
}else{
//不相等
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
木丸子刺客
2017-06-26 · 超过11用户采纳过TA的回答
知道答主
回答量:71
采纳率:100%
帮助的人:19.3万
展开全部
对象是包含属性的,
你要自己写个方法来比较判断是按什么属性来判断两个对象是不是相等的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式