オブジェクトを取るメソッドにプリミティブを渡すことができるのはなぜですか? プリミティブはオブジェクト化されていますか? int = Integer と boolean = Boolean のように?
次の関数を呼び出すことができます。
hash(41, 0);
public static int hash(int seed, Object object)
{
int result = seed;
if(object == null)
{
return hash(result, 0);
}
else if(!isArray(object))
{
result = hash(result, object.hashCode());
}
else
{
int length = Array.getLength(object);
for(int index = 0; index < length; ++index)
{
Object item = Array.get(object, index);
// prevent looping if item in array references the array itself
if(!(item == object))
{
result = hash(result, item);
}
}
}
return result;
}