|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.nakedobjects.metamodel.commons.lang.HashCodeUtils
public final class HashCodeUtils
Collected methods which allow easy implementation of hashCode, based on Josh Bloch's Effective
Java.
Example use case:
public int hashCode() {
int result = HashCodeUtil.SEED;
//collect the contributions of various fields
result = HashCodeUtil.hash(result, fPrimitive);
result = HashCodeUtil.hash(result, fObject);
result = HashCodeUtil.hash(result, fArray);
return result;
}
http://www.javapractices.com/Topic28.cjp| Field Summary | |
|---|---|
static int |
SEED
An initial value for a hashCode, to which is added contributions from fields. |
| Method Summary | |
|---|---|
static int |
hash(int aSeed,
boolean aBoolean)
booleans. |
static int |
hash(int aSeed,
char aChar)
chars. |
static int |
hash(int aSeed,
double aDouble)
doubles. |
static int |
hash(int aSeed,
float aFloat)
floats. |
static int |
hash(int aSeed,
int aInt)
ints. |
static int |
hash(int aSeed,
long aLong)
longs. |
static int |
hash(int aSeed,
java.lang.Object aObject)
aObject is a possibly-null object field, and possibly an array. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
public static final int SEED
hashCode, to which is added contributions from fields. Using a
non-zero value decreases collisons of hashCode values.
| Method Detail |
|---|
public static int hash(int aSeed,
boolean aBoolean)
public static int hash(int aSeed,
char aChar)
public static int hash(int aSeed,
int aInt)
Note that byte and short are handled by this method, through implicit conversion.
public static int hash(int aSeed,
long aLong)
public static int hash(int aSeed,
float aFloat)
public static int hash(int aSeed,
double aDouble)
public static int hash(int aSeed,
java.lang.Object aObject)
aObject is a possibly-null object field, and possibly an array.
If aObject is an array, then each element may be a primitive or a possibly-null object.
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||