User:Alexsmail/Computer programming/How Objects should be correctly compared in Java

From Wikibooks, open books for an open world
Jump to navigation Jump to search

Introduction[edit]

See appendix A for formal definition.

Method along consideration[edit]

equals()[edit]

Object hirerachy and its state (getClass() or instanceof ?). Immutable object. Object.equals()

hashCode()[edit]

Object.hashCode()

Natural order - compareTo()[edit]

Comparable#compareTo()

compareTo()[edit]

Comparable#compareTo()

Comparable#equals()

Map (Hashtable)[edit]

Combination consideration[edit]

equals() and hashCode()[edit]

Object.hashCode()

equals() and compareTo()[edit]

equals() and compareTo() and hashCode()[edit]

HashMap, equals() and compareTo()[edit]

TreeMap, equals() and compareTo()[edit]

Maps, Hashtable and Set and Arrays[edit]

HashMap's and Set's key[edit]

Immutable. keys are Uniformly distributed.

TreeMap vs HashMap[edit]

Sort[edit]

QuickSort MergeSort Stable sort Comparator TreeMap


Miscellaneous[edit]

signum function[edit]

Sorting with Comparator[edit]

Arrays.sort()


Appendix B[edit]

Mathematic background[edit]

Set Order pair Relation Relation over Set Two-place relation function function in Java Partial Order Full order Equivalence relation Equivalence class