1.Map概述
MapMap集合类用于存储元素对(称作键和值),其中每个键映射到一个值,该接口描述了从不重复的键到值的映射。
2.Map子类
1).HashTable,底层是哈希表数据结构,不可以存入null键和null值,线程同步,JDK1.0效率低;
2).HashMap,底层是哈希表数据结构,可以存入null键和null值,不同步,JDK1.2效率高;
3).TreeMap,底层是二叉树数据结构,线程不同步,可以用于Map键排序.
3.Map集合转为Set集合
1).SetkeySet(),将所有的键存入Set集合,再使用迭代器获取value值
2).SetentrySet(), entrySet()方法返回一个实现Map.Entry接口的Set集合,集合中存放的是键/值对应关系,该关系是Map.Entry型。其中Entry是Map接口的内部接口。
Map.Entry提供的方法:
A)getKey(): 返回条目的关键字
B)getValue(): 返回条目的值
4.Map常见操作
1).添加操作:
V put(K key, V value):如果key已存在,在关联后,返回替换前该key对应的value值,如果不存在,则返回null;
void putAll(Map t):将来自特定映像的所有元素添加给该映像.
2).删除操作:
V remove(Object key):从此映射中移除指定键的映射关系(如果存在),不存在则返回null;
void clear() :从此映射中移除所有映射关系.
3).查询操作:
V get(key): 获得与关键字key相关的值,并且返回与关键字key相关的对象,如果没有该关键字,则返回null;判断key是否存在,可以通过返回值是否等于null
boolean containsKey(key): 判断映像中是否存在关键字key;
boolean containsValue(Object value): 判断映像中是否存在值value;
int size(): 返回当前映像中映射的数量;
boolean isEmpty(): 判断映像中是否有任何映射.
Collection values():返回映像中所有value值的集,由于值多个,用Collection集合,对其操作可以使用Collection基本方法
5.Map简单应用
下面这个是一个面试题,希望看到文章的朋友都能动手写写!
GajhdhgshagfjhgahksjgfkjhgasjgfkajgfjhasgfjhgajhfgjakgfjlgejwffjShfgsjgfjhjfbajgudgaelwugjbflajmebwflugaliufgalifgbSDHjkGFjkhlsGJKhDSFKhSKHDkhKKDLHLKDgajfagfjkalkgfkaf
1:统计一个字符串中每个字符出现的次数
2:求:这个字符串中a 出现的次数
完成之后请截图发到老孙的邮箱(705306999@qq.com),有惊喜哦
拿起微信扫一扫,关注老孙的微信公众号,里面有更多专业知识讲解
本文由职坐标整理并发布,希望对同学们有所帮助。了解更多详情请关注编程语言频道!