相同的值的代碼如下:爲什麼不是Object.hashCode()返回看似相同的對象
public class Main {
public static void main(String[] args) {
Student a = new Student(10, "Ole");
Student b = new Student(10, "Ole");
System.out.println(a.hashCode());
System.out.println(b.hashCode());
}
}
和物體看起來像這樣:
public class Student {
private int snr;
private String namn;
public Student(int snr, String namn) {
this.snr = snr;
this.namn = namn;
}
}
這些都是運行結果時,代碼:
57651960
441366923
我讀過一些的Javadoc的,但我不能找出原因,任何人都可以解釋爲什麼這HAPP ENS?還有我需要做什麼才能使結果一致? (如果可能)
感謝您的解釋:)!現在有意義;)
查看方法覆蓋。 –
[如果hashCode()沒有被覆蓋,什麼是對象的哈希碼] [duplicate](http://stackoverflow.com/questions/2237720/what-is-an-objects-hash-code-if-hashcode-is -not-overridden) – buzzsawddog