day04 【Map】

主要内容

  • Map集合

1 Map集合

1.1 特点:

  • Map集合是双列集合
  • K,V可以使用任意引用类型
  • key不能重复
  • 通过一个key只能找到唯一的一个value

1.2 Map常用子类

  • HashMap implements Map 无序
  • LinkedHashMap extends HashMap 有序

1.3 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集合)containsKey(Object key):是否包含

1.4 Map集合遍历键找值方式

1.获取所有键的存储到Set集合
2.遍历该集合
3.根据key获取对应的value值

1.5 Entry键值对对象

public Set<Map.Entry<K,V>> entrySet() :
获取到Map集合中所有的键值对对象的集合(Set集合)。

1.6 Map集合遍历键值对方式

1.获取键值对集合对象 Set<Map.Entry<K,V>>
2.遍历该集合对象
3.获取某一个Entry对象,
4.调用getKey和getValue方法获取键和值

1.7 HashMap存储自定义类型键值

  • 当给HashMap中存放自定义对象时,如果自定义对象作为key存在,这时要保证对象唯一,必须复写对象的 hashCode和equals方法
  • 如果要保证map中存放的key和取出的顺序一致
    使用 LinkedHashMap 集合来存放。

1.8 LinkedHashMap

  • 链表和哈希表组合的一个数据存储结构

2 补充知识点

2.1 Hashtable集合

安全,效率低,现在几乎不用,
子类Properties依然活跃在历史的舞台

2.2 JDK9对集合添加的优化

直接使用接口.of()方法
最多存储10个元素

1.只有List Set Map有该方法,对应实现类都没有该方法
2.返回的是固定的集合对象不可改变
3.Set Map来说存储的值不能重复

2.3 Debug追踪

使用方式:

在行号的右边,鼠标左键单击,添加断点(每个方法的第一行,哪里有bug添加到哪里)
右键,选择Debug执行程序
程序就会停留在添加的第一个断点处

执行程序:

f8:逐行执行程序
f7:进入到方法中
shift+f8:跳出方法
f9:跳到下一个断点,如果没有下一个断点,那么就结束程序
ctrl+f2:退出debug模式,停止程序
Console:切换到控制台

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值