Java 中如何基于数组内容生成哈希值(hashCode)呢?
下文笔者讲述Java中数组生成hashCode的方法分享,如下所示:
java.lang.Array hashCode方法继承Object类, 默认采用object的hashCode,所以缺省情况下数组的hashCode都相同, 如何根据数组内容生成hashCode呢?下文将一一道来,如下所示 ------------------------------------------------------------------ 实现思路: 借助Arrays.hashCode方法或Arrays.deepHashCode生成数组的hashCode例:
package com.java265.other;
import java.util.Arrays;
public class Test11 {
/**
* java265.com 示例演示
*/
public static void main(String[] args) throws Exception {
int[] a = { 1, 2, 44, 88 };
int[] b = { 1, 2, 44, 88 };
int[] c = { 1, 20, 44, 88 };
System.out.println("数组a hashCode:" + a.hashCode());
System.out.println("数组b hashCode:" + a.hashCode());
System.out.println("数组c hashCode:" + a.hashCode());
System.out.println("==================");
System.out.println(Arrays.hashCode(a));
System.out.println(Arrays.hashCode(b));
System.out.println(Arrays.hashCode(c));
}
}
------运行以上代码,将输出以下信息--------
数组a hashCode:617901222
数组b hashCode:617901222
数组c hashCode:617901222
==================
956686
956686
973984
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。


