标签:java arrays hashcode tostring hash
Objects是Java 7新增的一个工具类,它提供了一些工具方法来操作对象,这些工具方法大多是“空指针”安全的。
Objects实现的方法如下:
(1)hasCode(Object)方法在源码中是如何实现的:
public static int hashCode(Object o) {
return o != null ? o.hashCode() : 0;
}
不为null 的话,就获取它的哈希值,也就是说我们在使用这个方法时,就不必在意对象是否为空。
(2)hash(Object... values)方法在源码中如何实现的:
public static int hash(Object... values) {
return Arrays.hashCode(values);
}
同类型的参数。
接着来看看Arrays.hashCode(values)是如何实现的:
public static int hashCode(Object a[]) {
if (a == null)
return 0;
int result = 1;
for (Object element : a)
result = 31 * result + (element == null ? 0 : element.hashCode());
return result;
}
== null ? 0 : element.hashCode());来相加,最后获得每个哈希值累加后的值。
(3)toString(Object o)方法在源码中是如何实现的:
public static String toString(Object o) {
return String.valueOf(o);
}
public static String valueOf(Object obj) {
return (obj == null) ? "null" : obj.toString();
}
(4)toString(Object o, String nullDefault)方法在源码中的实现方式:
public static String toString(Object o, String nullDefault) {
return (o != null) ? o.toString() : nullDefault;
}
字符串。
转载请注明出处:http://blog.csdn.net/hai_qing_xu_kong/article/details/43927021 情绪控_
标签:java arrays hashcode tostring hash
原文地址:http://blog.csdn.net/hai_qing_xu_kong/article/details/43927021