首页 > 应用开发 > Java > Java开发之集合框架Map
Map提供了三个集合视图:
Sunday(星期天)、Monday(星期一)、Tuesday(星期二)、Wednesday(星期三)、Thursday(星期四)、Friday(星期五)、Saturday(星期六)
知道的子接口:
知道的实现类:
实现的接口:
在映射中不能有 java培训
在Map集合中的特点:
嵌套类(内部的):
|
方法 |
说明 |
|
Map.Entry<K,V> |
static interface,静态 接口,映射模式键-值对 |
Map方法:
|
方法 |
说明 |
|
clear() |
类型为void,在映射中移除所有的映射关系 |
|
containsKey(Object key) |
返回boolean类型,如果映射中包含指定的键的映射关系,返回为true,反之为false |
|
containsValue(Object value) |
返回boolean类型,如果映射中一个或多个键映射到指定的值上,返回为true,反之为false |
|
entrySet() |
返回类型为Set<Map.Entry<K,V>> 返回此映射中包含的映射关系 |
|
equals(Object o) |
返回类型为boolean,比较指定对象与映射是否相等 |
|
get(Object key) |
返回值,返回指定键所映射的值,如果此映射不包含该键的映射关系,返回为null,代表没有 |
|
hasCode() |
返回为Int类型,返回此映射的哈希码值 |
|
isEmpty() |
返回类型为boolean,如果此映射没有键-值的映射关系,返回为true,反之为false |
|
keySet() |
返回类型为Set<E>,返回此映射中包含的所有键的Set视图 |
|
put(K key, V value) |
将对应的键与值,建立映射关系,添加映射关系的方法 |
|
putAll(Map<? extends K, ? extends V> m) |
返回类型为void,从指定的映射关系中将所有的映射关系复制到此映射中 |
|
remove(Object key) |
如果存在这个键的映射关系就将其移除 |
|
size() |
返回类型为Int类型,返回此映射关系中的键-值映射关系的数目 |
|
values() |
返回类型为Collection<V>,返回此映射中包含的值的Collection视图 |
put
将对应的键与值,建立映射关系,添加映射关系的方法,如果之前就有这个映射关系,就会将指定的值替换掉旧的值。
参数:
key - 为指定的关联的键
value - 为指定的关联的值
会抛出的错误:
一般用的实现类:
HashMap
参数:
已实现的接口:
已知的子类:
所以:
Map例子:
如何获取所有的键
使用keySet
可以使用foreach循环
entrySet
作用为返回此映射中包含的映射关系Set的视图,将map集合中映射关系存储到set集合中。
映射关系:指键和值对应的关系,数据类型Map.Entry(内部的)关系的类型
Map.Entry<K,V>
接口实现类:
接口:
Map.Entry<K,V>方法
方法:
|
方法 |
说明 |
|
equals(Object o) |
返回类型为boolean,比较指定对象与此项的相等性 |
|
getKey() |
返回为此项对应的键 |
|
getValue() |
返回为此项对应的值 |
|
hashCode() |
返回类型为int,返回为此项的哈希码值 |
|
setValue(V value) |
用指定的值去换此项对应的值 |
values()
返回类型为Collection<V>,返回此映射中包含的值的Collection视图
总结:Map -> entrySet() getKey() getValue() -> keySet() get(key) -> values()
Hashmap
TreeMap
实例:
Java Map 集合类
最常用的集合类就是List和Map,List的实现类包括ArrayList和Vector,可以变大小的列表,适合构建,存储,和操作任何类型对象元素的列表。
Map是比较通用的,Map集合类是用于存储元素对的,为键-值对,每个键映射到一个值,从理解上可以将List看作数值键的Map,但两者没有什么关系。
所有键值对 — entrySet()
所有键 — keySet()
值 — values()
entrySet():返回 Map 中所包含 映射 的 Set 视图。
keySet():返回 Map 中所包含 键 的 Set 视图。
values():返回 Map 中所包含 值 的 Collection 视图。
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/70010293/viewspace-2843381/ ,如需转载,请注明出处,否则将追究法律责任。