Map集合

util:collection<T>  集合单     Map<K,V>集合双

Map结合中有键和值  映射关系

基本特点:

1、该集合存储键值对    一对,一对往里存  而且要保证键的唯一性

Map方法:

1、添加

2、删除

3、判断

4、获取

Map集合_第1张图片

获取还有两个方法:

entrySet()  KeySet()

map集合有3个小弟HashTable  HashMap  TreeeMap  两个常见

HashTable底层的数据结构是哈希表   不可以存储null为键和值   元老级     jdk1.0

                 该集合是线程同步的

HashMap 底层的数据结构哈希表  常用    非同步   允许使用null为键和值     jdk1.2  效率高

TreeMap 底层的数据结构是二叉树结构   线程不同步 可以用于map集合中的键进行排序 

Set集合和Map集合很像  Set底层就是使用map集合

集合取出的方法

1、KeySet()  将map所有的键存入集合中,因为set具备迭代器,所以可以通过迭代方式取出所有的键,再根据get方法,获取每一个键对应的值

map集合的取出原理:将Map结合转换为set集合再利用迭代器来取

Map集合_第2张图片

2、  entrySet()  将map集合中的映射关系存入到set集合中,而这个关系的数据类型就是Map.Entry类型

Map集合_第3张图片

Map.Entry其实Etntry也是一个接口,它是map接口中的一个内部接口内部有getKey()和getValue()


利用map集合存储自定义对象:

每一个学生都有对应的归属地  

学生  Student  地址String  

学生属性:姓名,年龄

注意:姓名和年龄相同的视为同一个学生  保证学生的唯一性

1、描述学生

2、定义map容器。将学生作为键,地址作为值。存入   HashMap

3、获取map集合中的元素

注意:ClassCastExpection("异常");

创建多个对象的类时,并且往hash表中放的时候或者往二叉树中的时候Map集合_第4张图片

什么时候使用map集合,当数据之间存在映射关系时,就要想到map集合

TreeMap<char,int>  错误   TreeMap<Character,Interager>正确

map集合扩展知识:

map集合被使用,是因为具备映射关系

你可能感兴趣的:(Map集合)