`
mcecho
  • 浏览: 39912 次
  • 性别: Icon_minigender_2
  • 来自: 北京
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

Object equals()

阅读更多
Object之间的比较运算:
1、两个对象指的是不是同一个 ==
2、两个对象的内容是否相等  equals()
自定义的类需要改写equals方法
注:Java中规定,两个equals的对象,它们的hash code也必须相同,所以也需要改写hashCode方法
例子
public class Myobject {

private int data;
public Myobject(int i){
data = i;
}
public boolean equals(Myobject obj){
if(obj!=null&&(obj instanceof Myobject)){
if(this.data==((Myobject)obj).data){
return true;
}
}
return false;
}

public int hashCode(){
return (new Integer(data).hashCode());
}
}
测试下
public class TestMyobject {

/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Myobject ob1 = new Myobject(1);
Myobject ob2 = new Myobject(1);
Myobject ob3 = new Myobject(3);
System.out.println(ob1.hashCode());
System.out.println(ob2.hashCode());
System.out.println(ob3.hashCode());

}

}

分享到:
评论

相关推荐

    equals(Object) 与 == 的区别

    "equals(Object) 与 == 的区别" .equals(Object) 与 == 的区别是 Java 编程语言中一个常见的问题,许多初学者都感到困惑。下面我们将详细地解释这两个概念之间的区别。 首先,让我们看一个例子。假设我们有两个 ...

    autocad objectarx acmgd.dll 导出的.net类资料清单

    Equals(Object) AS System.Boolean GetHashCode() AS System.Int32 GetType() AS System.Type ToString() AS System.String 属性: CurrentMode AS Autodesk.AutoCAD.ApplicationServices.DocumentLockMode 可...

    Java中Object.equals和String.equals的区别详解

    Java中Object.equals和String.equals的区别详解 Java中的Object.equals和String.equals是两个不同的equals方法,它们之间的区别是非常重要的,理解这两个方法的区别对于我们编写高质量的Java代码非常重要。 首先,...

    ==代替Object#equals() - 加速在容器类中搜索元素速度的可能性

    在Java编程中,`Object#equals()`方法是用于比较两个对象是否相等的标准方式,但它的性能可能并不总是满足高效容器类中元素搜索的需求。这篇博客"代替Object#equals() - 加速在容器类中搜索元素速度的可能性"探讨了...

    关于Object中equals方法和hashCode方法判断的分析

    "关于Object中equals方法和hashCode方法判断的分析" 在 Java 中,Object 类提供了两个重要的方法:equals 方法和 hashCode 方法。这两个方法都是用于比较两个对象是否相等的,但它们的实现机理和作用域却有所不同。...

    Java Object类认识

    本文将深入探讨`Object`类,以及其核心方法`equals()`与Java中的`==`操作符之间的差异。 `Object`类位于Java的核心库`java.lang`包中,它提供了基本的方法来支持对象的创建、比较和字符串表示。以下是`Object`类的...

    C#使用Equals()方法比较两个对象是否相等的方法

    `Equals()`方法是Object类的一个成员,因此所有C#类都默认继承了这个方法。然而,对于自定义类,`Equals()`方法的行为可能需要根据具体需求进行重写,以实现更加精确的比较逻辑。 首先,我们来看一下基本类型的`...

    重写equals方法

    例如,public boolean equals(Object o) 是一个正确的重写方法,而 public boolean equals(String o) 是一个重载方法,而不是重写方法。 equals 方法的实现 ------------------------- equals 方法的实现需要遵循...

    equals问题经典

    在自定义类`Student`中,没有重写`equals()`方法,所以默认使用的是`Object`类的`equals()`。这意味着`stu1.equals(stu2)`将比较`stu1`和`stu2`的引用地址,而不是`Student`对象的属性。由于`stu1`和`stu2`是两个...

    hashcode和equals方法

    equals()和hashcode()这两个方法都是从object类中继承过来的。当String 、Math、还有Integer、Double。。。。等这些封装类在使用equals()方法时,已经覆盖了object类的equals()方法.

    重写toString和equals方法

    在 Java 中,每个对象都继承自 Object 类,而 Object 类中定义了两个重要的方法:toString() 和 equals()。这两个方法都是非常重要的,它们分别用于对象的字符串表示和对象比较。然而,在大多数情况下,我们需要重写...

    Java中equals方法隐藏的陷阱

    `equals`方法的标准定义是在`java.lang.Object`类中,其签名是`public boolean equals(Object obj)`。这是一个重要的设计决策,因为这样可以确保任何对象都可以被传递给`equals`方法进行比较。然而,在实际开发过程...

    winform 重写Equals源码

    首先,`Equals`方法是`Object`类中的一个虚方法,它的默认行为是基于引用的相等性检查,即两个对象是否指向内存中的同一个位置。然而,对于值类型的比较或自定义类的实例,我们通常希望基于对象的内容(属性值)进行...

    Java的Object类讲解案例代码 equals()、hashCode()、finalize()、clone()、wait()

    Object类是所有Java类的根类,它定义了一些常用的方法,例如equals()、hashCode()、toString()等。本案例代码将详细展示Object类的使用方法,并提供一些实际场景下的案例,以帮助开发者更好地理解和运用这些方法。 ...

    equals方法的重写.docx

    `equals`方法是Java语言中Object类的一个重要成员方法,其默认实现是比较两个对象的内存地址是否相同(即是否为同一个对象)。为了使对象之间能够基于内容进行比较,通常需要在具体的类中重写`equals`方法。 #### ...

    Object类toString()和equals()方法使用解析

    Object类toString()和equals()方法使用解析 Object类是所有类的父类,因此也被称为根类、祖先。那么,我们就来看一看Object类的最常用的两个方法是如何用的。 toString()方法 toString()方法是 Object 类的一个...

    Java语言深入_equals

    `Object`类提供了`equals`方法的默认实现,它仅比较对象的引用,也就是说,只有当两个对象是同一个实例时,`equals`才返回`true`。这对于值比较是没有意义的,因此在子类中,我们需要重写`equals`以进行值的比较。 ...

    equals与==之间的区别

    默认情况下,`equals`方法在`Object`类中被定义为比较两个对象的引用是否相同,这与`==`操作符的行为相似。然而,许多Java类(如`String`、`Integer`等)重写了`equals`方法,使其能够基于对象的内容来进行比较。 ...

    java中equals()函数的用法 equals和==的区别

    而`equals()`方法是Object类中的一个成员方法,它的默认行为也是比较两个对象的引用是否相等,与`==`一致。但是,很多类(如String、Integer等)都重写了`equals()`方法,以便进行更深层次的内容比较。例如,String...

    hashcode()和equals()

    public boolean equals(Object obj) { if (this == obj) return true; if (obj == null || getClass() != obj.getClass()) return false; Student student = (Student) obj; return age == student.age && ...

Global site tag (gtag.js) - Google Analytics