Map集合

映射:
Java 提供了专门的集合类用来存放这种对象关系的对象,即 java.util.Map
口。
Collection 中的集合称为单列集合, Map 中的集合称为双列集合。
 
Map 中的集合不能包含重复的键,值可以重复;每个键只能对应一个值。
 
​​​Map集合的常用子类
HashMap :存储数据采用的哈希表结构,元素的存取顺序不能保证一致。由于要保证键的唯一、不重复,需
要重写键的 hashCode() 方法、 equals() 方法。
LinkedHashMap HashMap 下有个子类 LinkedHashMap ,存储数据采用的哈希表结构 + 链表结构。通过链
表结构可以保证元素的存取顺序一致;通过哈希表结构可以保证的键的唯一、不重复,需要重写键的
hashCode() 方法、 equals() 方法。
 
Map 接口中的常用方法
 
public V put(K key, V value) : 把指定的键与指定的值添加到 Map 集合中。
public V remove(Object key) : 把指定的键 所对应的键值对元素 在 Map 集合中删除,返回被删除元素的
值。
public V get(Object key) 根据指定的键,在 Map 集合中获取对应的值。
public Set<K> keySet() : 获取 Map 集合中所有的键,存储到 Set 集合中。
public Set<Map.Entry<K,V>> entrySet() : 获取到 Map 集合中所有的键值对对象的集合 (Set 集合 )
 
使用 put 方法时,若指定的键 (key) 在集合中没有,则没有这个键对应的值,返回 null ,并把指定的键值添加到
集合中;
若指定的键 (key) 在集合中存在,则返回值为集合中键对应的值(该值为替换前的值),并把指定键所对应的
值,替换成指定的新值。
 
Map 集合遍历键找值方式
keyset()
键值对方式:即通过集合中每个键值对 (Entry) 对象,获取键值对 (Entry) 对象中的键与值
Map 集合不能直接使用迭代器或者 foreach 进行遍历。但是转成 Set 之后就可以使用了。
 
HashMap 存储自定义类型键值
当给 HashMap 中存放自定义对象时,保证对象唯一,必须复写对象的 hashCode和 equals 方法
 
LinkedHashMap
它是链表和哈希表组合的一个数据存储结构。
 
 
 
 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值