|
@@ -1661,6 +1661,34 @@ public final class ObjectUtils {
|
|
|
return CodecUtils.md5(string);
|
|
|
}
|
|
|
|
|
|
+ /**
|
|
|
+ * 计算对象哈希值
|
|
|
+ *
|
|
|
+ * @param objects 对象数组
|
|
|
+ * @return 哈希值
|
|
|
+ */
|
|
|
+ public static int hash(Object... objects) {
|
|
|
+ return Objects.hash(objects);
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 计算对象哈希值,参考Arrays.hashCode()方法
|
|
|
+ *
|
|
|
+ * @param objects 对象集合
|
|
|
+ * @return 哈希值
|
|
|
+ */
|
|
|
+ public static int hash(Collection<?> objects) {
|
|
|
+ if (objects == null) {
|
|
|
+ return 0;
|
|
|
+ }
|
|
|
+
|
|
|
+ int value = 1;
|
|
|
+ for (Object obj : objects) {
|
|
|
+ value = 31 * value + (obj == null ? 0 : obj.hashCode());
|
|
|
+ }
|
|
|
+ return value;
|
|
|
+ }
|
|
|
+
|
|
|
/**
|
|
|
* 获取集合第一个元素
|
|
|
*
|