【Java学习笔记】Map接口及其实现类

1.Map集合的特点将键映射到值的对象 一个映射不能包含重复的键 每个键最多只能映射到一个值2.Map集合的功能概述2.1 添加功能V put(K key,V value):添加元素2.2 删除功能V remove(Object key):根据键删除键值对元素,并返回值 void clear():移除所有的键值对元素2.3 判断功能boolean containsK...
摘要由CSDN通过智能技术生成

目录

1.Map集合的特点

2.Map集合的功能概述

2.1 添加功能

2.2 删除功能

2.3 判断功能

2.4长度功能

2.5获取功能

3.Map集合的遍历

3.1 根据键找值

3.2 根据键值对对象找键和值

4.HashMap的概述

4.1 HashMap案例1:键String值String

4.2 HashMap案例2:键Integer值String

4.3 HashMap案例3:键String值Student

4.4 HashMap案例4:键Student值String

5.LinkedHashMap的概述和使用

6.TreeMap概述

6.1 TreeMap案例1:键是String值是String

6.2 TreeMap案例2:键是Student值是String

7.面试题

7.1 Hashtable和HashMap的区别?

7.2 List、Set、Map等接口是否都继承自Map接口?

7.3 Collection和Collections的区别?


1.Map集合的特点

  • 将键映射到值的对象
  • 一个映射不能包含重复的键
  • 每个键最多只能映射到一个值

2.Map集合的功能概述

2.1 添加功能

  • V put(K key,V value):添加元素

2.2 删除功能

  • V remove(Object key):根据键删除键值对元素,并返回值
  • void clear():移除所有的键值对元素

2.3 判断功能

  • boolean containsKey(Object key):判断集合是否包含指定的键
  • boolean containsValue(Object value):判断集合是否包含指定的值
  • boolean isEmpty():判断集合是否为空

2.4长度功能

  • int size():返回集合中键值对的对数

2.5获取功能

  • Set<K> keySet():获取集合中所有键的集合
  • V get(Object key):根据键获取值
  • Collection<V> values():获取集合中所有值的集合
  • Set<Map.Entry<K,V>> entrySet():返回的是键值对对象的集合

3.Map集合的遍历

3.1 根据键找值

分析步骤如下:

  • 获取所有的键
  • 遍历键的集合,获取得到每一个键
  • 根据键去找值

部分代码如下:

// 创建集合对象
Map<String, String> map = new HashMap<String, String>();

// 向集合中添加元素
map.put("杨过", "小龙女");
map.put("杨康", "穆念慈");
map.put("郭靖", "黄蓉");
map.put("杨玄风", "梅超风");
		
// 获取集合中所有键的集合
Set<String> set = map.keySet();
// 遍历set,得到每一个key
for (String key : set) {
	// 根据键去找值
	String value = map.get(key);
	System.out.println(key + "---" + value);
}

3.2 根据键值对对象找键和值

分析步骤如下:

  • 获取所有键值对对象的集合
  • 循环遍历键值对对象的集合,得到每一个键值对对象
  • 根据键值对对象得到键和值

部分代码如下:

// 创建集合对象
Map<String, String> map = new HashMap<String, String>();

// 向集合中添加元素
map.put("杨过", "小龙女");
map.put("杨康", "穆念慈");
map.put("郭靖", "黄蓉");
map.put("杨玄风", "梅超风");
		
// 获取键值对对象的集合
Set<Map.Entry<String, String>> entrySet = map.entrySet();
// 循环遍历键值对对象的集合,得到每一个键值对对象
for (Map.Entry<String, String> entry : entrySet) {
	// 根据键值对对象得到键和值
	String key = entry.getKey();
	String value = entry.getValue();
	System.out.println(key + "---" + value);
}

4.HashMap的概述

  • HashMap是基于哈希表的Map接口的实现。
  • 哈希表的作用是用来保证的键的唯一性的。
  • 哈希表结构底层依赖hashcode()方法和equals()方法!

4.1 HashMap案例1:键String值String

// 创建集合对象
HashMap<String, String> hm = new HashMap<String, String>();

// 向集合中添加元素
hm.put("allan", "男");
hm.put("bella", "女");
hm.put("zhangsan", "女");

// 遍历
// 获取所有键的集合
Set<String> set = hm.keySet();
for (String key : set) {
	// 根据键去找值
	String value = hm.get(key);
	System.out.println(key 
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小蝌蚪找玛玛

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值