- 浏览: 106896 次
- 性别:
- 来自: 西安
文章分类
- 全部博客 (90)
- JavaSe (22)
- JavaEE (10)
- JavaFrameWork (1)
- Python (7)
- batch (3)
- MsSql/Oracle/MySql (1)
- 服务器 (4)
- Software (1)
- Eclipse (1)
- SWT/JFace (0)
- 版本控制 (1)
- 代码优化与规范 (5)
- 设计 (2)
- 理财 (1)
- 日记 (3)
- 记事薄 (1)
- 转载 (1)
- entertainment (0)
- 算法 (2)
- xml (0)
- 待整理 (0)
- 常用资源整理 (0)
- vbs (2)
- C++ (1)
- Material (5)
- 系统 (2)
- Hibernate (8)
- tools (3)
- 程序员 (1)
- javascript (6)
- 职场 (2)
- 管理 (0)
- struts2 (0)
- EJB (1)
- webserver (2)
- struts (0)
- dwr (1)
- webPageTec (0)
- cas (0)
- 业务 (0)
- 工具 (0)
- 笔记 (0)
- 职业生涯 (0)
最新评论
一般来讲,equals这个方法是给用户调用的,如果你想判断2个对象是否相等,
你可以重写equals方法,然后在代码中调用,就可以判断他们是否相等了。
简单来讲,equals方法主要是用来判断从表面上看或者从内容上看,2个对象
是不是相等。举个例子,有个学生类,属性只有姓名和性别,那么我们可以认为
只要姓名和性别相等,那么就说这2个对象是相等的。
hashcode方法一般用户不会去调用,比如在hashmap中,由于key是不可以重复的,
他在判断key是不是重复的时候就判断了hashcode这个方法,而且也用到了equals
方法。这里不可以重复是说equals和hashcode只要有一个不等就可以了!所以简单
来讲,hashcode相当于是一个对象的编码,就好像文件中的md5,他和equals不同
就在于他返回的是int型的,比较起来不直观。我们一般在覆盖equals的同时也要覆
盖hashcode,让他们的逻辑一致。举个例子,还是刚刚的例子,如果姓名和性别相等
就算2个对象相等的话,那么hashcode的方法也要返回姓名的hashcode值加上性别的
hashcode值,这样从逻辑上,他们就一致了。
要从物理上判断2个对象是否相等,用==就可以了。
发表评论
-
张孝祥Java面试总结
2014-03-25 21:58 1675<!--StartFragment --> 张孝 ... -
JNDI简介
2013-04-16 18:16 1231JNDI(The Java Naming and Dire ... -
注释 常用标签
2013-02-20 12:46 636Java Comment Standard: Functi ... -
文件操作通用方法1
2012-08-17 16:30 0// 共享文件(夹)是否存在 public boolean ... -
propertie resource bundle 待补充
2012-08-15 08:53 02012年8月14日 08:57:04 星期二 Resourc ... -
Dom4J SaxReader
2012-08-06 20:10 02012年8月3日 11:48:49 星期五 Dom4j.Sa ... -
事件处理机制
2012-08-02 18:18 0事件处理机制: NameEvent 类似于一个 Javabe ... -
Model Part Figure Policy
2012-08-02 13:03 02012年7月27日 09:36:03 Mode ... -
记录异常堆栈信息 并打印记录 直接出错的点
2012-07-26 13:12 0package com.huawei.cnd.client.c ... -
记录异常堆栈信息
2012-07-26 13:03 0package com.huawei.ExceptionT; ... -
子类可以复写的方法
2012-07-25 19:01 0子类可以重写的父类的方法 共有的 受保护的 友元的 不可以重 ... -
Swt/Jaface
2012-07-19 17:55 0SWT.EraseItem | PaintItem| Ime ... -
javas
2012-07-18 19:27 0for item in NodeBoardTypeAndNod ... -
列头点击切换排序属性
2012-07-14 12:40 0private static final int ASC = ... -
等腰三角形辐射 算法
2012-07-09 23:02 825public static Point genNext(Poi ... -
动态内部类 与 匿名内部类
2012-07-05 15:19 0动态内部类: 访问外部类的成员: 所有都可以访问 成 ... -
位移运算符
2012-07-05 12:56 0num << n: 有符号 左移 ,当把数字往左移 ... -
swt 操作 clipboard
2012-07-05 12:55 0SWT Operate Clipboard private ... -
2012年7月4日 Map 2则
2012-07-05 12:54 02012年7月4日 15:06:43 子类中有一个 map,且 ... -
update语句
2012-07-05 12:52 02012年6月26日 19:42:45 update ... ...
相关推荐
hashCode 的用法详解 hashCode 是一种用于查找和排序的机制,在数据结构中 plays a crucial role。下面我们将对 hashCode 的用法进行详细的解释。 hashCode 的作用 hashCode 的主要作用是用于查找和排序。在查找...
### 深入理解 HashCode 方法 #### 一、HashCode 的基本概念与作用 在 Java 编程语言中,`HashCode` 是一个非常重要且基础的概念。简单来说,`HashCode` 是一个整数值,用于快速定位对象的位置。在 Java 中,每一个...
在Java编程语言中,`equals()` 和 `hashCode()` 方法是Object类中的两个核心方法,所有类都默认继承自Object类。这两个方法在处理对象比较和集合操作时起着至关重要的作用。当我们创建自定义类并需要对对象进行精确...
本文介绍了Java语言不直接支持关联数组,可以使用任何对象作为一个索引的数组,但在根Object类中使用 hashCode()方法明确表示期望广泛使用HashMap。理想情况下基于散列的容器提供有效插入和有效检索;直接在对象模式...
equals 与 hashCode 方法讲解 equals 方法和 hashCode 方法是 Java 语言中两个重要的方法,它们都是在 Object 类中定义的。equals 方法用于比较两个对象是否相等,而 hashCode 方法用于返回对象的哈希码。 在 Java...
"Java中Hashcode的作用" Hashcode是Java编程语言中一个非常重要的概念,它在equals方法中扮演着关键角色。在Java中,每个对象都具有一个独特的Hashcode,它可以用来标识对象的身份。但是Hashcode是什么?它是如何...
在Java编程语言中,`hashCode()` 和 `equals()` 是两个非常重要的方法,它们主要用于对象的比较和哈希表(如HashMap)的操作。标题提到的"HashCode相同equals不同的2位字符集合算法"涉及到的是一个特定场景:两个...
### Java中`hashCode()`与`equals()`方法详解 #### 前言 在Java编程语言中,`hashCode()`和`equals()`方法是非常重要的概念,它们不仅对于深入理解Java内存管理至关重要,也是实现自定义类的关键部分之一。本文将...
本主题将深入探讨如何利用反射技术绕过编译器的一些限制,并介绍hashcode在高级应用中的用法。 首先,让我们理解反射的基本概念。在Java中,反射提供了一种方式,使我们能够在运行时动态地获取类的信息(如类名、...
本篇将深入探讨ArrayList与HashSet的区别,并分析Hashcode在其中的作用。 ArrayList是基于动态数组实现的,它提供了按索引访问元素的能力,就像在数组中一样。由于内部维护了一个数组,ArrayList保证了元素的顺序性...
equals()和hashcode()这两个方法都是从object类中继承过来的。当String 、Math、还有Integer、Double。。。。等这些封装类在使用equals()方法时,已经覆盖了object类的equals()方法.
### 复写`hashCode()`方法与`equals()`方法 在Java编程中,`hashCode()`方法与`equals()`方法是对象比较中的两个非常重要的方法。它们主要用于判断对象是否相等以及对象的散列值,这对于集合类(如`HashSet`)来说...
在Java编程语言中,`hashCode()`和`equals()`方法是对象身份验证的关键组成部分,它们主要用于对象的比较和哈希表(如HashMap、HashSet等)的操作。理解这两个方法的工作原理对于编写高效和可靠的代码至关重要。 ...
深入解析Java对象的equals()和hashCode()的使用 在Java语言中,equals()和hashCode()两个函数的使用是紧密配合的,你要是自己设计其中一个,就要设计另外一个。在多数情况下,这两个函数是不用考虑的,直接使用它们...
hashCode() 和 equals() 的本质区别和联系 Java 中的每个对象都有 hashCode() 和 equals() 方法,这两个方法的正确实现对于 Java 开发人员来说是非常重要的。本文将详细介绍 hashCode() 和 equals() 的本质区别和...
### HashCode的作用详解 #### 一、HashCode的基本概念 在Java中,`hashCode()` 方法是 `Object` 类的一个重要成员方法,它返回一个整数,这个整数通常用来表示对象的哈希值。哈希值在Java集合框架中扮演着至关重要...
在Java编程语言中,`equals()` 和 `hashCode()` 方法是对象的基本组成部分,它们在很多场景下都发挥着至关重要的作用。这两个方法与对象的相等性比较和哈希表(如HashMap、HashSet)的运作紧密相关。这篇博客将深入...
在Java编程语言中,`equals()`, `hashCode()` 和 `toString()` 是三个非常重要的方法,它们主要用于对象的比较、哈希存储以及打印对象信息。这三个方法是Java对象的基础特性,对于理解和开发高质量的Java程序至关...
在Java编程语言中,`hashCode()` 和 `equals()` 方法是两个非常重要的概念,尤其是在处理对象比较和哈希表(如 `HashMap` 或 `HashSet`)时。这两个方法来源于 `Object` 类,是所有Java类的基类,因此,每个自定义类...