码迷,mamicode.com
首页 > 编程语言 > 详细

Java中Map接口和其常用子类

时间:2019-08-19 21:03:23      阅读:139      评论:0      收藏:0      [点我收藏+]

标签:输出   object   zab   集合   abs   link   查询   keyset   使用情况   

  一、Map接口常用方法

  • public V put(K key,V value):向集合中保存数据;
  • public V get(Object key):根据key查找对应的value数据;
  • public Set<K> keySet():取出全部的key,返回一个set集合;
  • public Set<Map.Entry<K,V>> entrySet():将Map集合转化为set集合;

  二、常用子类

    1、public class HashMap<K,V> extends AbstractMap<K,V> implements Map<K,V>, Cloneable, Serializable

      是JDK1.2时推出的,基于哈希表实现的映射接口。此实现提供所有可选映射操作,并允许空值和空键。采用异步处理,非线程安全。该类不保证映射的顺序;特别是,它不能保证顺序会随着时间保持不变。

    2、public class Hashtable<K,V> extends Dictionary<K,V> implements Map<K,V>, Cloneable, Serializable

      是JDK1.0时推出的,这个类实现了一个哈希表,它将键映射到值。任何非空对象都可以用作键或值(不允许空值和空键)。采用同步处理,线程安全。

    3、public class LinkedHashMap<K,V> extends HashMap<K,V> implements Map<K,V>

      哈希表和链表实现了Map接口,具有可预测的迭代顺序。这个实现与HashMap的不同之处在于,它维护一个运行于所有条目中的双链表。这个链表定义了迭代顺序,这通常是键插入到映射中的顺序(插入顺序)。注意,如果一个键被重新插入到映射中,插入顺序不会受到影响。

    4、public class TreeMap<K,V> extends AbstractMap<K,V> implements NavigableMap<K,V>, Cloneable, Serializable

      一个基于红黑树的NavigableMap实现。映射是根据其键的自然顺序排序的,或者由在创建映射时提供的比较器进行排序,这取决于使用的是哪个构造函数。

  三、使用情况

    当要实现插入、删除、查询时,使用HashMap;当要实现按(自然、自定义)顺序遍历时,使用TreeMap;当要实现按输入输出顺序遍历时,使用LinkedHashMap。

 

Java中Map接口和其常用子类

标签:输出   object   zab   集合   abs   link   查询   keyset   使用情况   

原文地址:https://www.cnblogs.com/crush-u-1214/p/11379470.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!