java学习之Map集合
2015-09-17 19:11
295 查看
Map集合:可以存储键值对的元素。将键映射到值的对象,一个映射不能包含重复的键,每个键最多只能映射到一个值。
Map集合和Collection集合的区别?
Map集合存储元素是成对出现的,Mao集合的键是唯一的,值是可重复的。可以把这个理解为:***对
Collection集合存储元素是单独出现的。Collection的儿子Set是唯一的。List是可重复的。可以把这个理解为:光棍。
注意:
• Map集合的数据结构值针对键有效,跟值无关
Collection集合的数据结构是针对元素有效
Map集合功能:
1.添加
V put(K key,V value):添加元素。这个其实还有另一个功能:
如果键是第一次存储,就直接存储,返回null,如果键不是第一次存储,就用当前值替换以前的值,并返回以前的值。
2.删除
void clear():移除所有的键值对元素。
V remove(Object key):根据键删除键值对元素,并把值返回
3.判断
boolean containsKey(Object Key):判断集合是否包含指定的键
boolean containsValue(Object
value):判断集合是否包含指定的值
4.获取
Set<Map.Entry<K,V>>
5.长度
int size():返回集合中的键值对对数。
HashMap:是基于哈希表的Map接口实现。
哈希表的作用是用来保证键的唯一性。
如果键的类型为String或者Integer等重写了hashCode和equals方法时,能保证键的唯一
如果键的类型为自定义对象时,必须对此对象重写hashCode和equals方法才能保证键的唯一。
LinkedHashMap:是Map接口的哈希表和链接列表实现,具有可预知的迭代顺序。
由哈希表保证键的唯一性,由链表保证键的有序。(存储和取出顺序一致)
TreeMap类概述:键是红黑树结构,可以保证键的排序和唯一性。
实现键的空参Comparable接口,重写compareTo方法或者Comparator接口,重写compare方法。
Map集合和Collection集合的区别?
Map集合存储元素是成对出现的,Mao集合的键是唯一的,值是可重复的。可以把这个理解为:***对
Collection集合存储元素是单独出现的。Collection的儿子Set是唯一的。List是可重复的。可以把这个理解为:光棍。
注意:
• Map集合的数据结构值针对键有效,跟值无关
Collection集合的数据结构是针对元素有效
Map集合功能:
1.添加
V put(K key,V value):添加元素。这个其实还有另一个功能:
如果键是第一次存储,就直接存储,返回null,如果键不是第一次存储,就用当前值替换以前的值,并返回以前的值。
2.删除
void clear():移除所有的键值对元素。
V remove(Object key):根据键删除键值对元素,并把值返回
3.判断
boolean containsKey(Object Key):判断集合是否包含指定的键
boolean containsValue(Object
value):判断集合是否包含指定的值
4.获取
Set<Map.Entry<K,V>>
entrySet():返回的是键值对对象
V get(Object key):根据键获取值
Set<K> keySet():获取集合中所有键的集合
Collection<V> values():获取集合中所有值的集合
5.长度
int size():返回集合中的键值对对数。
HashMap:是基于哈希表的Map接口实现。
哈希表的作用是用来保证键的唯一性。
如果键的类型为String或者Integer等重写了hashCode和equals方法时,能保证键的唯一
如果键的类型为自定义对象时,必须对此对象重写hashCode和equals方法才能保证键的唯一。
LinkedHashMap:是Map接口的哈希表和链接列表实现,具有可预知的迭代顺序。
由哈希表保证键的唯一性,由链表保证键的有序。(存储和取出顺序一致)
TreeMap类概述:键是红黑树结构,可以保证键的排序和唯一性。
实现键的空参Comparable接口,重写compareTo方法或者Comparator接口,重写compare方法。
相关文章推荐
- Java读写MySQL数据库小实例
- Java 内存区域和GC机制以及JVM(Java虚拟机)优化大全和案例实战
- 深入理解Java的接口和抽象类
- Java学习笔记04 异常
- 在Eclipse里查看Java字节码
- Struts2 显示日期类型
- java.net.SocketException四大异常解决方案
- 用netbeans编的简易计算器
- java_流
- Eclipse常用快捷键
- java 编程思想阅读笔记(4)
- Java编程思想:第10章 内部类
- Java 异常的处理
- springmvc笔记(来自慕课网)
- Struts、Spring、Hibernate的作用
- eclipse基础环境配置和svn、maven的配置以及maven的安装
- struts2面试题
- java 函数回调
- Eclipse SDK构建J2EE开发环境
- JAVA问题集锦Ⅰ