ソースを参照

ObjectUtils新增获取对象哈希值工具方法

Woody 1 ヶ月 前
コミット
61dbc7515f

+ 28 - 0
framework-common/src/main/java/com/chelvc/framework/common/util/ObjectUtils.java

@@ -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;
+    }
+
     /**
      * 获取集合第一个元素
      *