013--集合详解之Map+面试题

VIP免费
2024-12-11 6 0 295.37KB 13 页 5.9玖币
侵权投诉
集合详解之 Map + 面试题
集合有两个大接口:Collection Map ,本文重点来讲解集合中另一个常用的集合类型
Map
以下是 Map 的继承关系图:
11
Map 简介
Map 常用的实现类如下:
Hashtable Java 早期提供的一个哈希表实现,它是线程安全的,不支持 null 键和
值,因为它的性能不如 ConcurrentHashMap,所以很少被推荐使用。
HashMap :最常用的哈希表实现,如果程序中没有多线程的需求,HashMap 是一个
很好的选择,支持 null 键和值,如果在多线程中可用 ConcurrentHashMap 替代。
TreeMap :基于红黑树的一种提供顺序访问的 Map ,自身实现了 key 的自然排序,
也可以指定 Comparator 来自定义排序。
LinkedHashMap HashMap 的一个子类,保存了记录的插入顺序,可在遍历时保持
与插入一样的顺序。
Map 常用方法
常用方法包括:putremovegetsize 等,所有方法如下图:
enter image description here
使用示例,请参考以下代码:
Map hashMap = new HashMap();
// 增加元素
hashMap.put("name", "老王");
hashMap.put("age", "30");
hashMap.put("sex", "你猜");
// 删除元素
hashMap.remove("age");
// 查找单个元素
System.out.println(hashMap.get("age"));
// 循环所有的 key
for (Object k : hashMap.keySet()) {
System.out.println(k);
}
// 循环所有的值
for (Object v : hashMap.values()) {
System.out.println(v);
}
以上为 HashMap 的使用示例,其他类的使用也是类似。
HashMap 数据结构
HashMap 底层的数据是数组被成为哈希桶,每个桶存放的是链表,链表中的每个节点,
就是 HashMap 中的每个元素。在 JDK 8 当链表长度大于等于 8 时,就会转成红黑树的数
据结构,以提升查询和插入的效率。
HashMap 数据结构,如下图:
摘要:

集合详解之Map+面试题集合有两个大接口:Collection和Map,本文重点来讲解集合中另一个常用的集合类型Map。以下是Map的继承关系图:11Map简介Map常用的实现类如下:•Hashtable:Java早期提供的一个哈希表实现,它是线程安全的,不支持null键和值,因为它的性能不如ConcurrentHashMap,所以很少被推荐使用。•HashMap:最常用的哈希表实现,如果程序中没有多线程的需求,HashMap是一个很好的选择,支持null键和值,如果在多线程中可用ConcurrentHashMap替代。•TreeMap:基于红黑树的一种提供顺序访问的Map,自身实现了key的...

展开>> 收起<<
013--集合详解之Map+面试题.docx

共13页,预览3页

还剩页未读, 继续阅读

声明:本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。玖贝云文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知玖贝云文库,我们立即给予删除!
分类:计算机 价格:5.9玖币 属性:13 页 大小:295.37KB 格式:DOCX 时间:2024-12-11

开通VIP享超值会员特权

  • 多端同步记录
  • 高速下载文档
  • 免费文档工具
  • 分享文档赚钱
  • 每日登录抽奖
  • 优质衍生服务
/ 13
客服
关注