map与set是一种进行搜索的数据结构。
一 Map
map存储的是key-value的键值对。
1 map中的常见方法
方法 | 作用 |
put(key,value) | 向map中存放key-value键值对 |
get(key) | 根据key值得到value值 |
getOrDefault(key,value) | 获取值为key的value,若不存在,则将key值对应的value值设为value |
remove(key) | 删除key的值 |
containsKey(key) | 是否存在key为key的值 |
containsValue(value) | 是否存在value为value的值 |
keySet() | 将Map中的key值生成Set值 |
2 需要注意以下几点:
(1)存储的顺序与打印的顺序不一致(HashMap中该顺序是根据哈希函数计算得到的)
(2)map中的key值不能重复,如果相同,则替换为最新的value值
(3)HashMap中可以存放null,但TreeMap中不可以
二 Set
set存储的是key值。
1 set中的常见方法
方法 | 作用 |
add(key) | 向set中存放key值 |
remove(key) | 删除key的值 |
contains(key) | 是否存在key为key的值 |
2 需要注意:set中的key值不能重复
三 Set与Map的区别
1 Map是键值对,Set是值得集合。
2 Map可以通过get方法获取值,而Set不能。
3 Set的值是唯一的,可以对数组去重,而Map可以统计数组中元素出现的次数。