Java 集合 list,set,queue,map,stack 的特点与用法?

目录

Map

Set

List

Queue

Stack

用法


Map

1、Map 是键值对,键 Key 是唯一不能重复的,一个键对应一个值,值可以重复。
2、TreeMap 可以保证顺序,HashMap 不保证顺序,即为无序的。
3、Map 中可以将 Key 和 Value 单独抽取出来。
        ①、其中 KeySet()方法可以将所有的 keys 抽取成一个 Set。
        ②、Values()方法可以将 map 中 所有的 values 抽取成一个集合。

Set

不包含重复元素的集合,set 中最多包含一个 null 元素,只能用 Iterator 实现单项遍历,Set
中没有同步方法。

List

有序的可重复集合,可以在任意位置增加删除元素,用 Iterator 实现单向遍历,也可用
ListIterator 实现双向遍历。

Queue

Queue遵从先进先出原则
使用时尽量避免add()和remove()方法,而是使用offer()来添加元素,
使用 poll()来移除元素,它的优点是可以通过返回值来判断是否成功,
LinkedList 实现了 Queue 接口,Queue 通常不允许插入 null 元素。

Stack

Stack 遵从后进先出原则
Stack 继承自 Vector,它通过五个操作对类 Vector 进行扩展,允许将向量视为堆栈,它提供了通常的 push 和 pop 操作,以及取堆栈顶点的 peek()方法、测试堆栈是否为空的 empty 方法等。

用法

如果涉及堆栈,队列等操作,建议使用 List。
对于快速插入和删除元素的,建议使用 LinkedList。
如果需要快速随机访问元素的,建议使用 ArrayList
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值