作者:小兔子脚
链接:https://zhuanlan.zhihu.com/p/25064361
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
Map
Map接口
----HashMap:Map的主要实现类。
----LinkedHashMap:使用链表添加进Map的顺序,故遍历Map时,是按添加的顺序遍历的。
----TreeMap:按照添加进Map中的元素的key的指定属性进行排序。要求key 必须是同一个类的对象。
自然排序 & 定制排序
----Hashtable:古老的实现类,线程安全,不建议使用
---Properties:常用来处理属性文件,键和 值都为String 类型
1.用于保存具有映射关系的数据:key-value
2.Map 中的key 和value 都可以是任何引用类型的数据。
3.Map 中的key 用Set 来存放,不允许重复,即同一个Map对象所对应的类,需重写hashCode() 和equals()方法
4.key 和value 之间存在单项一对一关系,即通过指定的key 总能找到唯一的、确定的value。
Map 主要方法
//Object put(Object key, Object value)
向Map中添加一个元素
HashMap :
1.key 使用Set 来存放的,不可重复。value 使用Collection 来存放的。一个key-value对,是一个Entry。所有的Entry 使用Set 存放的,也是不可重复的
2.向HashMap 中添加元素时,会调用key 所在类的equals()方法,判断两个key 是否相同,若相同,则后添加的会 覆盖已有的那个相同的。
//Object remove(Object key)
删除
//void putAll(Map t)
//void clear()
清空
//Object get(Object key)
获取指定key的value 值,若无此key,则返回null
//boolean containsKey(Object key)
//boolean containsValue(Object value)
//int size()
返回集合长度
//boolean isEmpty()
//boolean equals(Object obj)
//遍历Map
》Set keySet():遍历key 集
》Collection values():遍历value 集
》Set entrySet():遍历key-value 对。
TreeMap
按照添加进Map中的元素的key的指定属性进行排序。要求key 必须是同一个类的对象。
自然排序 & 定制排序
》》自然排序(People 规定按姓名进行排序)
》》定制排序
》操作Collection 以及Map 的工具类:Collections
》
//reverse(List): 反转List 中的元素的顺序
//shuffle(List):对List 集合元素进行随机排序
//sort(List):根据元素的自然顺序对指定List 集合元素按升序排序
//sort(List, Comparator):根据制定的Comparator 产生的顺序对List集合元素进行排序
//swap(List, int i, int j):将指定 List 集合中的i 处元素和 j 处元素进行交换
》
//Object max(Collection co)根据元素的自然顺序,返回给定集合中的最大元素
//Object max(Collection co, Comparator com):根据Comparator 指定的顺序,返回给定集合中的最大元素
//Object min(Collection co)
//Object min(Collection co, Comparator com)
//int frequency(Collection co, Object ob):返回指定集合中指定元素的出现次数
//void copy(List dest, List src):将src 中的内容复制到dest 中
//boolean replaceAll(List list, Object oldVal, Object newVal):使用新值替换原有的,全部替换
链接:https://zhuanlan.zhihu.com/p/25064361
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
Map
Map接口
----HashMap:Map的主要实现类。
----LinkedHashMap:使用链表添加进Map的顺序,故遍历Map时,是按添加的顺序遍历的。
----TreeMap:按照添加进Map中的元素的key的指定属性进行排序。要求key 必须是同一个类的对象。
自然排序 & 定制排序
----Hashtable:古老的实现类,线程安全,不建议使用
---Properties:常用来处理属性文件,键和 值都为String 类型
1.用于保存具有映射关系的数据:key-value
2.Map 中的key 和value 都可以是任何引用类型的数据。
3.Map 中的key 用Set 来存放,不允许重复,即同一个Map对象所对应的类,需重写hashCode() 和equals()方法
4.key 和value 之间存在单项一对一关系,即通过指定的key 总能找到唯一的、确定的value。
Map 主要方法
//Object put(Object key, Object value)
向Map中添加一个元素
HashMap :
1.key 使用Set 来存放的,不可重复。value 使用Collection 来存放的。一个key-value对,是一个Entry。所有的Entry 使用Set 存放的,也是不可重复的
2.向HashMap 中添加元素时,会调用key 所在类的equals()方法,判断两个key 是否相同,若相同,则后添加的会 覆盖已有的那个相同的。
//Object remove(Object key)
删除
//void putAll(Map t)
//void clear()
清空
//Object get(Object key)
获取指定key的value 值,若无此key,则返回null
//boolean containsKey(Object key)
//boolean containsValue(Object value)
//int size()
返回集合长度
//boolean isEmpty()
//boolean equals(Object obj)
//遍历Map
》Set keySet():遍历key 集
》Collection values():遍历value 集
》Set entrySet():遍历key-value 对。
TreeMap
按照添加进Map中的元素的key的指定属性进行排序。要求key 必须是同一个类的对象。
自然排序 & 定制排序
》》自然排序(People 规定按姓名进行排序)
》》定制排序
操作集合的工具类 Collections
》操作Collection 以及Map 的工具类:Collections
》
//reverse(List): 反转List 中的元素的顺序
//shuffle(List):对List 集合元素进行随机排序
//sort(List):根据元素的自然顺序对指定List 集合元素按升序排序
//sort(List, Comparator):根据制定的Comparator 产生的顺序对List集合元素进行排序
//swap(List, int i, int j):将指定 List 集合中的i 处元素和 j 处元素进行交换
》
//Object max(Collection co)根据元素的自然顺序,返回给定集合中的最大元素
//Object max(Collection co, Comparator com):根据Comparator 指定的顺序,返回给定集合中的最大元素
//Object min(Collection co)
//Object min(Collection co, Comparator com)
//int frequency(Collection co, Object ob):返回指定集合中指定元素的出现次数
//void copy(List dest, List src):将src 中的内容复制到dest 中
//boolean replaceAll(List list, Object oldVal, Object newVal):使用新值替换原有的,全部替换