标题< 集合框架(二) >
Map(key-value 键值对,夫妻对)
一、掌握Map接口的使用
HashMap<key,value>
Hashtable——> Properties
常用的API
- 1、 void put (Object key,Object value);存储键值对
- 2、 Object get(Object key);根据键获取值(键是唯一的)
- 3、 int size();获取集合中的键值对数量
- 4、 boolean containsKey(Object key);是否包含指定键
- 5、 booean containsValue (Object value);是否包含指定的值
- 6、 Set keySet();获取所有键的集合
- 7、 Collection values(); 获取集合所有值的集合
- 8、 Object remove(Object key);根据键删除值 会返回被删除的值
- 9、 boolean isEmpty(); 判断是否是空集合
- 10、 void clear(); 清空集合内容
- 11、 replace(a,b);把a键的值改为b
Map集合遍历
二、了解HashMap和Hashtable的区别(面试题)
线程安全问题
多线程:重要、复杂、难度高
- 相同点:
– 1、 HashMap和Hashtable的区别都是Map接口的实现,都可以实现键值对存储。 - 不同点:
– 1、HashMap 键值都可为 null,如果键为 null则只能存储一次
Hashtable 键值存储不允许为null
– 2、HashMap 是线程是不安全的,效率高
Hashtable 是线程安全的,效率低
三、掌握泛型的基本使用
JDK 1.5 才出现的
包装类、注解、泛型…
- 1、在集合中泛型声明数据类型
- 2、利用泛型将程序变得更加易扩展
四、掌握 Collections 工具类的常用操作
Arrays
Colections
- 1、 void sort(集合); 对集合进行升序排序
- 2、 int max(集合); 获取集合中的最大值
- 3、 int min(集合); 获取集合中的最小值
- 4、 int binarySearch(集合,要查找的元素);查找指定的键
- 5、 void shuffle(集合); 打乱集合元素顺序
- 6、 void reverse(); 反转集合排序
笔记
- 返回 int 类型 重写 compareTo
实现comarable接口
- HashMap工作原理
- Hashtable