Java-集合(Collections&Maps)学习笔记

以下笔记摘自那些年的事儿Java-Collections系列(十分感谢),附带有少量个人总结。

一、概览

Collections接口继承树:

 

Map接口继承树:

 

二、Collections&Maps接口与实现类的具体介绍

Collections可参考:https://www.cnblogs.com/nayitian/p/3266090.html

Maps可参考:http://www.cnblogs.com/nayitian/p/3267110.html

注:

1. 线性安全的实现类有:Vector、Stack、Hashtable。

2. ArrayList、ArrayQueue、Vector是以数组实现的;LinkedList是以链表实现的;TreeMap和TreeSet是使用红黑树来实现的。

3. Hashtable不允许key为null,也不允许value为null;TreeMap与EnumMap不允许key为null;HashMap及其子类LinkedHashMap,IdentityHashMap允许key为null。

4. Map接口不存在contains方法,但是有containsKey方法和containsValue方法。

5. Java HashMap工作原理及实现

 

三、Collections&Maps的遍历(传统遍历、迭代器遍历、foreach遍历)

详见:http://www.cnblogs.com/nayitian/archive/2013/03/08/2950730.html

注:

1. HashSet不保证维护元素的次序(迭代顺序),如果要对集合元素进行排序需要使用TreeSet。

2. HashMap也不保证维护元素的次序(迭代顺序),如果想要使用key进行排序需要使用TreeMap。

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值