java对象容器List,Map,Set

1.结构

我们来看一看对象容器的结构

我们来总结一下(对于泛型后续介绍):
首先:
Collection:他的实现类有三个分支List,Set,Queue
List: ArryList,LinkedList,
Set: HashSet,LinkHashSet,TreeSet(只能储存唯一元素,就是会有重复的值出现)
Queue: PriortyQueue (我们可以用LinkedList来实现Stack(栈)以及Queue(队列))
Map: HashMap,LinkedHashMap,TreeMap(关联数组,key,value的形式,key不能重复)

我们可以对这些容器对于对象的存储方式进行这样的分类
1,ArrayList,HashSet,HashMap他们都是以随机的hash散列算法来存储对象,所以对于随机访问元素的效率高
2,LinkedList,LinkHashSet,LinkedHashMap:按照元素的指定插入顺序进行排列
3.TreeSet,TreeMap 按照插入元素的比较结果进行升序排列
对于接口与实现类的关系这里不做过多介绍!就是声明与实例的不同导致方法多少的问题
Collection–>ArryList,LinkedList
Set –>HashSet,LinkHashSet,TreeSet
Map–> HashMap,LinkedHashMap,TreeMap

2.方法(我这里只介绍具体的方法而不去写具体的代码)

2.1ArrayList
— Array.asList(),把一个数组或者“,”号分割的字符串转化为一个List ,List的尺寸不能变化(不能插入删除数据)
—toArray(),将List转化为数组
—indexOf()返回某个元素的索引
—add(),addAll()插入元素
—remove() ,removeAll()删除并返回元素
—subList()截取List
—contains(),containsAll(),判断List中是否有某个元素(集合)

2.2LinkedList
—getFirst(),element(),返回并不移除第一个元素,如果元素为空则会抛出异常(NoSuchElementException)
—peek()在返回第一的元素为空时则会返回null
— removeFirst(),remove(),移除并返回列表的头,元素为空同样会抛出异常
— poll移除并返回列表的头,元素为空返回null
—-addFirst(),add(),addLast(),向尾(端)插入元素
—removeLast(),删除并返回最后一个元素

3.Set(不保存重复元素)

—HashSet,散列存储方式,
—TreeSet 元素存储在红-黑数据结构中
—LinkedHashSet 也使用了散列,但看起来用了链表结构储存数据

4.Map(可以多维)
遍历方式:Map.Entry<?,?> entry : map.entrySet()
—get() 返回map中的键 为空返回null
—put(key,value) 存放键值对
—containsKey(),containsValue(),判断是否包含某键/值

5.Queue(LinkedList实现了Queue这里不做过多介绍)

6.PriorityQueue(优先级队列,先进先出)

7.ForEach与Interable接口
任何实现Interable接口的类都可以作用于foreach中

备注:关于本章的代码后续会补全!!!

还是那句话,如果我的文章对你撸码有帮助,请点一波关注,那里说的不对,请轻喷!

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值