HashMap 是一个散列表,它存储的内容是键值对(key-value)映射。
HashMap 实现了 Map 接口,根据键的 HashCode 值存储数据,具有很快的访问速度,最多允许一条记录的键为 null,不支持线程同步。
HashMap 是无序的,即不会记录插入的顺序。
HashMap 继承于AbstractMap,实现了 Map、Cloneable、java.io.Serializable 接口。
导入包;
import java.util.HashMap;
初始化:
HashMap<Integer,String> map=new HahMap<>();
键不可重复,值可以重复
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}
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
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}
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
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}