黑马程序员技术交流社区
标题: Java基础总结—集合-Map(补得昨天的帖子) [打印本页]
作者: Richard926 时间: 2015-4-29 23:57
标题: Java基础总结—集合-Map(补得昨天的帖子)
Day18 -集合-Map
2015/04/28
1、Map集合
最大的优点是体现了对应关系。
Map是一个键值对形式的集合,它的数据不再是单个的,必须同时有键和值组成。
Map和collection的区别:
Map:是(键值对)双列形式的集合,键必须是唯一,不能重复,值是可以重复的;
Collection:是单列值得集合,
Map集合中的具体实现类的数据结构是针对键有效的。
Map接口功能:
A:增加功能
V put(K key,V value):当key在集合中不存在时,添加元素;当key在集合存在时候,替换元素。
B:删除功能
void clear():清除所有键值对数据。
V remove(Object key):根据指定的键删除键值对。
C:判断功能
boolean containsKey(Object key):判断指定的键是否在集合中存在
boolean containsValue(Object vlaue):判断指定的值是否在集合中存在
boolean isEmpty():判断集合是否为空
D:获取功能
Set<Map.Entry<K,V>> entrySet():键值对对象的集合。
Object get(Object key):根据键获取值
Set<K> keySet():所有键的集合
Collection<V> values():所有值的集合
E:长度功能
int size()
Map集合的遍历:
方式1:(利用键找值)
(1)把所有的键集中起来。Set<K> keySet()。
(2)遍历键集合,获取每个键。用迭代器或者增强for。
(3)利用键找值。Get(object key)。
方式2:(键值对)
(1)获取所有键值对集合。Set<键值对> entrySet()。
(2)遍历键值对集合,获取每个键值对。用迭代器或者曾强foe。
(3)通过键值对对象获取键和值。
2、HashMap和Hashtable的区别(面试题)
Hashtable是线程安全的,效率低;不允许null键和值。
HashMap是线程不安全的,效率高;允许null键和值。
3、统计字符串中字母出现的次数(面试题)
| 欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) |
黑马程序员IT技术论坛 X3.2 |