Java中的 AbstractMap hashCode() 方法及示例
Java中的AbstractMap.hashCode()方法用于获取特定此 AbstractMap 的哈希码值。一个映射由许多存储键值对的桶组成。每个bucket都有一个唯一的标识,当一个key-value对插入bucket时,key的hashcode与bucket的标识符匹配,如果匹配,则该对存储成功。这就是哈希码的工作原理。
句法:
AbstractMap.hashCode()
参数:该方法不接受任何参数。
返回值:该方法返回地图的哈希码值。
以下程序用于说明 AbstractMap.hashCode() 方法的工作:
程序 1:将字符串值映射到整数键。
// Java code to illustrate the hashCode() method
import java.util.*;
public class Abstract_Map_Demo {
public static void main(String[] args)
{
// Creating an empty AbstractMap
AbstractMap
abs_map = new IdentityHashMap();
// Mapping string values to int keys
abs_map.put(10, "Geeks");
abs_map.put(15, "4");
abs_map.put(20, "Geeks");
abs_map.put(25, "Welcomes");
abs_map.put(30, "You");
// Displaying the AbstractMap
System.out.println("Initial Mappings are: "
+ abs_map);
// Getting the hashcode value for the map
System.out.println("The hashcode value of the map: "
+ abs_map.hashCode());
}
}
输出:
Initial Mappings are: {10=Geeks, 30=You, 20=Geeks, 25=Welcomes, 15=4}
The hashcode value of the map: 2043437408
程序 2:将整数值映射到字符串键。
// Java code to illustrate the hashCode() method
import java.util.*;
public class Abstract_Map_Demo {
public static void main(String[] args)
{
// Creating an empty AbstractMap
AbstractMap
abs_hash = new IdentityHashMap();
// Mapping int values to string keys
abs_hash.put("Geeks", 10);
abs_hash.put("4", 15);
abs_hash.put("Geeks", 20);
abs_hash.put("Welcomes", 25);
abs_hash.put("You", 30);
// Displaying the AbstractMap
System.out.println("Initial Mappings are: "
+ abs_hash);
// Getting the hashcode value for the map
System.out.println("The hashcode value of the map: "
+ abs_hash.hashCode());
}
}
输出:
Initial Mappings are: {Geeks=20, Welcomes=25, You=30, 4=15}
The hashcode value of the map: 751311572
注意:可以使用任何类型的映射执行相同的操作,其中包含不同数据类型的变化和组合。