1、集合框架Map介绍
方法归类
初识map :
在集合中允许嵌套
map集合中存放的都是一组组映射关系 key=value
map集合key不能重复
增加
put(K key, V value)
putAll(Map<? extends K,? extends V> m)
删除
clear()
remove(Object key)
判断
containsKey(Object key)
containsValue(Object value)
isEmpty()
获取
get(Object key)
size()
values()
entrySet()
keySet()
ps:小结
Map
Hashtable:底层是哈希表数据结构,不可以存入null键null值,该集合石线程同步的,jdk1.0,效率低
HashMap:底层是哈希表数据结构,允许使用null值和null键,该集合是不同步的。将Hashtable替代;jdk1.2,效率高
TreeMap:底层是二叉树数据结构,线程不同步,可以用于给Map集合中的键进行排序
注意:
添加元素时,如果键已经在集合中存在,那么后添加的值会覆盖原来的值,并且put方法会将原有的值返回
1、集合框架Map应用
Demo01:
1、将学生作为键,地址作为值进行存储,名字年龄相同则被认定为一个人,最后输出
需: a.建立一个student类,实例化作为key添加到map集合中。
b.对学生进行判重复
2、最后按年龄进行排序
3、需求改变、按姓名进行排序
Demo02:
1、统计字符串中字符出现次数 按次数排序
比如:sasdasdaeqweqxzcz
a(8)c(6)u(2)
考虑:
统计功能
1.将字符串转为字符数组,将这个字符串中的字符当作map集合中的key,将出现的次数 作为value值
2.当字符第一次出现的时候,那么用它在集合中进行寻找,返回值必然为null,之后将该字符对应的值改为1
3.如果说该字符不是第一次出现,该字符对应的值不为null,然后应该+1