欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

判断两个对象的值是否相等

程序员文章站 2022-03-02 13:04:12
...
public class Chongxie {

	public int a;
	public double b;

	/**
	 * 判断两个对象的值是否相等
	 */
	@Override
	public boolean equals(Object obj) {
		// TODO Auto-generated method stub
		//重写equals,判断是否是同一个对象
		if(super.equals(obj)){
			return true;
		}else{
			//是否是Chongxie类型的对象
			if(obj instanceof Chongxie){//用instanceof判断。
				//强制类型转换
				//引用类型的强制转换就是父类转子类
				Chongxie c=(Chongxie) obj;
				if(a==c.a&&b==c.b){
					return true;
				}
			}
		}
		return false;
	}
	
	@Override
	public String toString() {
		// TODO Auto-generated method stub
		return super.toString();
	}
	public static void main(String[] args) {
		Chongxie c1=new Chongxie();
		Chongxie c2=new Chongxie();
		c1.a=10;
		c1.b=20;
		c2.a=10;
		c2.b=20;
		Object o=new Object();
		System.out.println(c1.equals(o));
		System.out.println(c1);
		Class d=c1.getClass();//获得类的类型
		System.out.println(d.getName());
	}
}