Java Object hashCode() 方法
目录
Object hashCode()
方法用于获取对象的 hash 值。
语法
object.hashCode()
参数
- 无 。
返回值
返回对象哈希值,是一个整数,表示在哈希表中的位置。
实例
以下实例演示了 hashCode()
方法的使用:
class MybjTest { public static void main(String[] args) { // Object 使用 hashCode() Object obj1 = new Object(); System.out.println(obj1.hashCode()); Object obj2 = new Object(); System.out.println(obj2.hashCode()); Object obj3 = new Object(); System.out.println(obj3.hashCode()); } }
以上程序执行结果为:
225534817 1878246837 929338653
String
和 ArrayList
类使用 hashCode()
方法,String 和 ArrayList 类都继承了 Object,所以可以直接使用 hashCode()
方法:
import java.util.ArrayList; class MybjTest { public static void main(String[] args) { // String 使用 hashCode() String str = new String(); System.out.println(str.hashCode()); // 0 // ArrayList 使用 hashCode() ArrayList<Integer> list = new ArrayList<>(); System.out.println(list.hashCode()); // 1 } }
以上程序执行结果为:
0 1
以下实例演示如果两个对象相等,则它们的哈希值也是相等的:
class MybjTest { public static void main(String[] args) { // Object 使用 hashCode() Object obj1 = new Object(); // obj1 赋值给 obj2 Object obj2 = obj1; // 判断两个对象是否相等 System.out.println(obj1.equals(obj2)); // true // 获取 obj1 与 obj2 的哈希值 System.out.println(obj1.hashCode()); // 225534817 System.out.println(obj2.hashCode()); // 225534817 } }
以上程序执行结果为:
true 225534817 225534817
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。
码云笔记 » Java Object hashCode() 方法
码云笔记 » Java Object hashCode() 方法