HashMap是一种内部基于哈希原理进行工作的散列表,今天小编将为大家带来大数据编程入门:Java HashMap这篇文章为大家介绍一下Java数据结构中比较重要的一部分HashMap。
一、HashMap概念
HashMap是存储键值对(key-value)映射内容的一个散列表。
HashMap实现Map接口,根据键的HashCode值存储数据,访问速度快,最多允许一条记录的密钥为null,不支持线程同步。
HashMap是无序的,即不记录插入顺序。
HashMap继承自AbstractMap并实现Map、Cloneable和java.io.Serializable接口。
HashMap的key和value类型可以相同也可以不同,它们可以是字符串(String)类型的key和value,也可以是整数(Integer)类型的key和字符串(String)类型的value。
Map<String,String> map = Map.of(“Miuku”,”Miuku.com”,”Apple”,”Apple.com”);
key |
value |
Miuku |
Miuku.com |
Apple |
Apple.com |
Map<Integer,String> map = Map.of(1,”Miuku”,2,”Apple”);
key |
value |
1 |
Miuku |
2 |
Apple |
HashMap中的元素实际上是对象,一些常见的基本类型可以使用它的包装类。
下面是基本类型对应的包装类表:
基本类型 |
引用类型 |
boolean |
Boolean |
byte |
Byte |
short |
Short |
int |
Integer |
long |
Long |
float |
Float |
double |
Double |
char |
Character |
二、HashMap方法使用实例
HashMap类位于java.util包中,使用前需要引入,语法格式如下:
import java.util.HashMap; // 引入 HashMap 类
在下面的示例中,我们创建一个HashMap对象Sites、一个整数(Integer)的key和一个字符串(String)的value:
HashMap<Integer, String> Sites = new HashMap<Integer, String>();
1、添加元素
HashMap类提供了许多有用的方法,要添加键值对(key-value)可以使用put()方法,如下所示:
运行结果:
以下示例创建字符串(String)类型的key和字符串(String)类型的value:
运行结果:
2、
访问元素
可以使用 get(key) 方法来获取 key 对应的 value,如下所示:
运行结果:
3、
删除元素
可以使用 remove(key) 方法来删除 key 对应的键值对(key-value),如下所示:
运行结果:
可以使用clear方法删除所有键值对(key-value),如下所示:
运行结果:
4、
计算大小
可以使用size()方法计算HashMap中的元素数量,如下所示:
运行结果:
5、
迭代HashMap
如果想要迭代HashMap中的元素可以使用for-each。
如果只想获取key,就可以使用KeySet()方法,通过get(key)获取对应的value,若仅仅只是想获取value,可以使用values()方法。
实例:
运行结果:
三、HashMap方法
以下列表展示的是HashMap常用方法:
方法 |
描述 |
clear() |
删除HashMap中的所有(key-value)对。 |
clone() |
复制一份HashMap |
isEmpty() |
判断HashMap是否为空 |
size() |
计算HashMap中(key-value)对的数量 |
put() |
将(key-value)对添加到HashMap中 |
putAll() |
将所有(key-value)对添加到HashMap中 |
putIfAbsent() |
如果指定的键(key)在HashMap中不存在,则将指定的key-value)对插入到HashMap中。 |
remove() |
删除 HashMap 中指定键 key 的映射关系 |
containsKey() |
检查 hashMap 中是否存在指定的 key 对应的映射关系。 |
containsValue() |
检查 HashMap 中是否存在指定的 value 对应的映射关系。 |
replace() |
替换 HashMap 中是指定的 key 对应的 value。 |
replaceAll() |
用给定函数的结果替换HashMap中的所有映射关系。 |
get() |
获取指定key对应对value |
getOrDefault() |
获取指定key对应对value,如果找不到key,则返回设置的默认值 |
forEach() |
对HashMap中的每个映射执行指定的操作。 |
entrySet() |
返回HashMap中所有映射项的集合集合视图。 |
keySet() |
返回HashMap中所有 key 组成的集合视图。 |
values() |
返回HashMap中存在的所有 value 值。 |
merge() |
添加键值对到HashMap中 |
compute() |
对HashMap中指定key的值进行重新计算 |
computeIfAbsent() |
对HashMap中指定key的值进行重新计算,如果不存在这个 key,则添加到HasMap中 |
computeIfPresent() |
对HashMap中指定key的值进行重新计算,前提是该key存在于HashMap中。 |
以上就是关于大数据编程入门:Java HashMap这篇文章的全部内容了,希望可以帮助到大家~