Map集合

作者: muyang_js的简书 | 来源:发表于2018-11-15 16:00 被阅读8次

Map集合

概述

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

Map集合存储元素是成对出现的,Map集合的键是唯一的,值是可重复的。可以把这个理解为:夫妻对
Collection集合存储元素是单独出现的,Collection的儿子Set是唯一的,List是可重复的。可以把这个理解为:"光棍"
注意:
Map集合的数据结构值针对键有效,跟值无关
Collection集合的数据结构是针对元素有效

下面我们来了解Map集合的功能概述

添加功能

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

删除功能

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

判断功能

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

长度功能

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

获取功能

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

Map子类

HashMap

HashMap类概述

键是哈希表结构,可以保证键的唯一性

常用案例

 HashMap< String,String>
 HashMap< Integer,String>
 HashMap< String,Student>
 HashMap< Student,String>

 上面的也不是非要是学生对象,可以是你需求的对象

LinkedHashMap

概述

  • Map 接口的哈希表和链接列表实现,具有可预知的迭代顺序。
  • 由哈希表保证键的唯一性,不可重复
  • 由链表保证键盘的有序(存储和取出的顺序一致)

TreeMap

概述
键是红黑树结构,可以保证键的排序和唯一性

在输出结果中:HashMap会打印出{null=world, java=null, android=hello}
而在Hashtable中会报错
所以我们就能得出他们的区别

HashMap:线程不安全,效率高。允许null键和null值
Hashtable:线程安全,效率低。不允许null键和null值

Collections类

Collections类概述
针对集合进行操作的工具类,都是静态方法。

Collection和Collections的区别

Collection:是单列集合的顶层接口,有子接口List和Set。
Collections:是针对集合操作的工具类,有对集合进行排序和二分查找的方法

Collections成员方法

 public static < T> void sort(List list):排序 默认情况下是自然顺序。
 public static < T> int binarySearch(List< ?> list,T key):二分查找
 public static < T> T max(Collection< ?> coll):最大值
 public static void reverse(List< ?> list):反转
 public static void shuffle(List< ?> list):随机置换

相关文章

  • 2019-01-03

    Map集合 Map集合 1.1Map集合概念 Map集合是一种存放关系对象的对象的双列集合。 1.2Map集合的常...

  • 2019-01-13

    基于Map集合重点整理 Map集合 1.1Map集合概念 Map集合是一种存放关系对象的对象的双列集合。 1.2M...

  • Map集合Map<Integer,String> m

    01Map集合概述 A:Map集合概述:我们通过查看Map接口描述,发现Map接口下的集合与Collection接...

  • Map接口

    01Map集合概述 A:Map集合概述:我们通过查看Map接口描述,发现Map接口下的集合与Collection接...

  • 2020-06-30【Map】

    Map概述 Map集合的基本功能 Map集合的获取功能 Map集合的遍历 练习 Collections类 斗地主

  • day04 【Map】

    day04 【Map】 主要内容 Map集合 教学目标 能够说出Map集合特点 使用Map集合添加方法保存数据 使...

  • Java - Part 6

    一、Map集合Map集合和Collection集合不一样,Map集合是双列集合,以键值对的形式存在,键不能重复,值...

  • 集合详解

    Iterator:迭代器,它是Java集合的顶层接口(不包括 map 系列的集合,Map接口 是 map 系列集合...

  • 第六篇学习笔记

    第六篇学习总结 一、Map集合 Map集合和Collection集合不一样,Map集合是双列集合,以键值对的形式存...

  • Map----entrySet

    Map集合不需要迭代器; 他是先将Map集合转化为Set集合; 然后Set集合调用迭代器进行遍历。 Map.Ent...

网友评论

      本文标题:Map集合

      本文链接:https://www.haomeiwen.com/subject/yivyfqtx.html