`
i拾贝
  • 浏览: 29936 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

Object类之equals()方法

    博客分类:
  • java
阅读更多

Object类之equals()方法

TestEquals.java

//Object之equals方法
public class TestEquals {
	public static void main(String[] args) {
		Cat c1 = new Cat(1, 2, 3);
		Cat c2 = new Cat(1, 2, 3);
		System.out.println(c1 == c2);//false
		System.out.println(c1.equals(c2));//true,c1.equals使用的是Cat中重写的equals()方法
		
		String s1 = new String("hello");
		String s2 = new String("hello");
		System.out.println(s1 == s2);//false
		System.out.println(s1.equals(s2)); //true,s1.s1.equals使用的是String类中的equals()方法
	}
}

class Cat {
	int color;
	int height, weight;
	
	public Cat(int color, int height, int weight) {
		this.color = color;
		this.height = height;
		this.weight = weight;
	}
	
	//重写的equals()方法
	public boolean equals(Object obj) {
		if(obj == null) return false;
		else {
			if(obj instanceof Cat) {	//instanceof用来判断内存中实际对象A是不是B类型
				Cat c = (Cat)obj;
				if(c.color == this.color && c.height == this.height && c.weight == this.weight) {
					return true;
				}
			}
		}
		
		return false;
	}
	
}

 

 

分享到:
评论

相关推荐

    equals(Object) 与 == 的区别

    但是,equals(Object) 方法的特殊之处在于它可以被覆盖。这意味着,我们可以通过覆盖 equals(Object) 方法来让它比较两个对象的内容,而不是它们的引用。许多类,如 java.lang.String,已经覆盖了 equals(Object) ...

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

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

    重写equals方法

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

    hashcode和equals方法

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

    equals方法的重写.docx

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

    JAVA之Object类所有方法

    现在,我们将深入探讨`Object`类中的所有方法。 1. **equals()**: 这个方法用于比较两个对象是否相等。默认的`equals()`方法仅仅比较对象的引用,即如果两个对象是同一个实例,那么它们相等。通常,你需要重写此...

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

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

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

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

    重写toString和equals方法

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

    day08_14Object类及其equals()方法

    Java中equals方法隐藏的陷阱

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

    set接口经常用的hashCode和equals方法详解

    默认情况下,`Object`类中的`equals`方法仅比较两个对象的引用是否相同。为了实现元素的唯一性,`Set`接口要求覆盖`equals`方法,使其能够根据元素的实际内容来进行比较。 - **内容比较**: 在`Set`接口的不同实现中...

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

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

    Object类和Scanner类

    **1.2 Object类的方法** - **`public int hashCode()`**: - 该方法返回对象的哈希码值,通常用来支持数据结构如哈希表的操作。 - 哈希码值是由哈希算法计算得出的一个整数值,与对象的实际内存地址相关联但不等同...

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

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

    Java Object类认识

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

    day01【Object类、常用API】-笔记.md

    综上所述,理解`Object`类的核心方法(如`toString`和`equals`)及其重写方式对于提高代码质量至关重要。此外,掌握Java中的其他常用API(如`Date`、`DateFormat`、`Calendar`等)也对于构建高效的应用程序大有裨益...

    Object类&Date类&Calender类&StringBuilder类1

    例如,在 Java 中,String 类的 equals() 方法是用来判断两个字符串的内容是否相同,而 Object 类中的 equals() 方法是用来判断两个对象是否是同一个对象。 toString() 方法 toString() 方法是 Object 类中的一个...

    java中的==和equals()方法1

    接下来是`equals()`方法,它是Object类的一个实例方法,用于比较对象的内容。默认情况下,`equals()`方法的行为与`==`相同,即比较对象的引用。但是,很多类(如String、Integer等)都重写了`equals()`方法,使其...

    学习Object类——为什么要重写equeals和hashcode方法

    Object 类的 equals 和 hashCode 方法的重要性与实现 在 Java 编程语言中,Object 类是所有类的父类,但是在实际开发中,我们往往需要重写 Object 中的 equals 和 hashCode 方法,以便正确地比较对象的逻辑内容,而...

Global site tag (gtag.js) - Google Analytics