The new Objects class

Marek Kozieł develop4lasu at
Mon Jan 11 10:20:10 UTC 2010

2010/1/10 Neal Gafter <neal at>:
> On Sun, Jan 10, 2010 at 12:14 AM, Paulo Levi <i30817 at> wrote:
>> Just seen the new Objects class in the java.util.
>> I'd like to ask why does the
>> public static int hash(Object... values)
>> method, has the warning:
>> Warning: When a single object reference is supplied, the returned value does
>> not equal the hash code of that object reference. This value can be computed
>> by calling hashCode(Object).
>> When it could be rewritten as :
>> public static int hash(Object value1, Object value2, Object... restOfValues)
>> to avoid that.
> That would make it hard to pass an array.

Name "hashForArray" would not be better?

If there is need for efficiency improvements other methods can be
added to do not force arrays creation for low number of arguments:

public static int hash(Object value)
public static int hash(Object value, Object value1)
public static int hash(Object value, Object value1, Object value3)
public static int hash(Object... values)
public static int hash() // maybe ?

But I'm not sure if we need that, probably time will tell...

Pozdrowionka. / Regards.
Lasu aka Marek Kozieł

More information about the core-libs-dev mailing list