Java教程

9、java集合 Map

本文主要是介绍9、java集合 Map,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

特点:1、用于存储任意键值对(key—value)

           2、键:无序、无下标、不允许重复(唯一)

           3、值:无序、无下标、允许重复

键相同时,后面添加的值会替换前面的。

Map<String,String> map = new HashMap<>();

遍历方法(转为Set再遍历):

1、keySet()方法,值遍历

Set<String> set = map.keySet();
for (String s : set) {
    System.out.println(s);
}
2、entrySet()方法,键和值一起遍历
Set<Map.Entry<String,String>> set1 = map.entrySet();
for (Map.Entry<String, String> entry : set1) {
    System.out.println(entry.getKey()+"+"+entry.getValue());
}

方法:

Modifier and TypeMethod and Description
voidclear()

从该地图中删除所有的映射(可选操作)。

default Vcompute(K key, BiFunction<? super K,? super V,? extends V> remappingFunction)

尝试计算指定键的映射及其当前映射的值(如果没有当前映射, null )。

default VcomputeIfAbsent(K key, Function<? super K,? extends V> mappingFunction)

如果指定的键尚未与值相关联(或映射到 null ),则尝试使用给定的映射函数计算其值,并将其输入到此映射中,除非 null

default VcomputeIfPresent(K key, BiFunction<? super K,? super V,? extends V> remappingFunction)

如果指定的密钥的值存在且非空,则尝试计算给定密钥及其当前映射值的新映射。

booleancontainsKey(Object key)

如果此映射包含指定键的映射,则返回 true 。

booleancontainsValue(Object value)

如果此地图将一个或多个键映射到指定的值,则返回 true 。

Set<Map.Entry<K,V>>entrySet()

返回此地图中包含的映射的Set视图。

booleanequals(Object o)

将指定的对象与此映射进行比较以获得相等性。

default voidforEach(BiConsumer<? super K,? super V> action)

对此映射中的每个条目执行给定的操作,直到所有条目都被处理或操作引发异常。

Vget(Object key)

返回到指定键所映射的值,或 null如果此映射包含该键的映射。

default VgetOrDefault(Object key, V defaultValue)

返回到指定键所映射的值,或 defaultValue如果此映射包含该键的映射。

inthashCode()

返回此地图的哈希码值。

booleanisEmpty()

如果此地图不包含键值映射,则返回 true 。

Set<K>keySet()

返回此地图中包含的键的Set视图。

default Vmerge(K key, V value, BiFunction<? super V,? super V,? extends V> remappingFunction)

如果指定的键尚未与值相关联或与null相关联,则将其与给定的非空值相关联。

Vput(K key, V value)

将指定的值与该映射中的指定键相关联(可选操作)。

voidputAll(Map<? extends K,? extends V> m)

将指定地图的所有映射复制到此映射(可选操作)。

default VputIfAbsent(K key, V value)

如果指定的键尚未与某个值相关联(或映射到 null )将其与给定值相关联并返回 null ,否则返回当前值。

Vremove(Object key)

如果存在(从可选的操作),从该地图中删除一个键的映射。

default booleanremove(Object key, Object value)

仅当指定的密钥当前映射到指定的值时删除该条目。

default Vreplace(K key, V value)

只有当目标映射到某个值时,才能替换指定键的条目。

default booleanreplace(K key, V oldValue, V newValue)

仅当当前映射到指定的值时,才能替换指定键的条目。

default voidreplaceAll(BiFunction<? super K,? super V,? extends V> function)

将每个条目的值替换为对该条目调用给定函数的结果,直到所有条目都被处理或该函数抛出异常。

intsize()

返回此地图中键值映射的数量。

Collection<V>values()

返回此地图中包含的值的Collection视图。

这篇关于9、java集合 Map的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!