1、介绍

HashMap 是一个散列表,它存储的内容是键值对(key-value)映射。

HashMap 实现了 Map 接口,根据键的 HashCode 值存储数据,具有很快的访问速度,最多允许一条记录的键为 null,不支持线程同步。

HashMap 是无序的,即不会记录插入的顺序。

HashMap 继承于AbstractMap,实现了 Map、Cloneable、java.io.Serializable 接口。

2、使用

导入包;

import java.util.HashMap;

初始化:

HashMap<Integer,String> map=new HahMap<>();

3、功能函数

(1)添加元素put

键不可重复,值可以重复

import java.util.HashMap;
public class Main
{
	public static void main(String[] args) {
		HashMap<Integer,String> map=new HashMap<Integer,String>();
		map.put(1,"hello");
		map.put(2,"world");
		map.put(3,"hello");
		System.out.println(map);
	}
}
{1=hello, 2=world, 3=hello}
(2)访问元素
import java.util.HashMap;
public class Main
{
	public static void main(String[] args) {
		HashMap<Integer,String> map=new HashMap<Integer,String>();
		map.put(1,"hello");
		map.put(2,"world");
		map.put(3,"hello");
		System.out.println(map);
		System.out.println(map.get(2));//get(key)访问元素
	}
}
{1=hello, 2=world, 3=hello}
world
(3)删除元素
import java.util.HashMap;
public class Main
{
	public static void main(String[] args) {
		HashMap<Integer,String> map=new HashMap<Integer,String>();
		map.put(1,"hello");
		map.put(2,"world");
		map.put(3,"hello");
		System.out.println(map);
		map.remove(3);
		System.out.println(map);
	}
}
{1=hello, 2=world, 3=hello}
{1=hello, 2=world}

4、遍历元素

import java.util.HashMap;
public class Main
{
	public static void main(String[] args) {
		HashMap<Integer,String> map=new HashMap<Integer,String>();
		map.put(1,"hello");
		map.put(2,"world");
		map.put(3,"hello");
		System.out.println(map);
		//输出键、值
		for(Integer i:map.keySet())//keySet获取键
		{
		    System.out.println("key: "+i+" value: "+map.get(i));
		}
		//输出值
		for(String v:map.values())//values获取值
		{
		    System.out.println(v+" ");
		}
	}
}
{1=hello, 2=world, 3=hello}
key: 1 value: hello
key: 2 value: world
key: 3 value: hello
hello 
world 
hello

5、其他函数

java hashmap构造函数 java hashmap详解_java


java hashmap构造函数 java hashmap详解_System_02

import java.util.HashMap;
public class Main
{
	public static void main(String[] args) {
		HashMap<Integer,String> map=new HashMap<Integer,String>();
		map.put(1,"hello");
		map.put(2,"world");
		map.put(3,"hello");
		System.out.println(map);
		//输出键、值
		for(Integer i:map.keySet())
		{
		    System.out.println("key: "+i+" value: "+map.get(i));
		}
	    map.replace(3,"java");
	    System.out.println(map);
	}
}
{1=hello, 2=world, 3=hello}
key: 1 value: hello
key: 2 value: world
key: 3 value: hello
{1=hello, 2=world, 3=java}