public int hashCode()
- 返回该对象的哈希码值。默认情况下,该方法会根据对象的地址来计算。
- 不同对象的,hashCode()一般来说不会相同。但是,同一个对象的hashCode()值肯定相同。
Object o = new Object();int hashCode = o.hashCode();//public native int hashCode();//native 借助本地系统资源 计算hashCodeSystem.out.println(hashCode);//460141958Student sally = new Student("sally", 18);Student liming = new Student("liming", 22);System.out.println(sally.hashCode());//1163157884System.out.println(liming.hashCode());//1956725890
cn.giteasy.common.Student.java
package cn.giteasy.common;public class Student {private String name;private int age;public Student() {}public Student(String name, int age) {this.name = name;this.age = age;}public String getName() {return name;}public void setName(String name) {this.name = name;}public int getAge() {return age;}public void setAge(int age) {this.age = age;}@Overridepublic boolean equals(Object obj) {Student stu = (Student) obj;return this.name.equals(stu.getName()) && this.age == stu.getAge();}@Overridepublic String toString() {return "Student{" +"name='" + name + '\'' +", age=" + age +'}';}}
