Java集合需要记忆的部分

//仅记录需要记忆的部分

0、总体框架

1、Collection

Collection是一个接口,是高度抽象的集合,包含集合的基本操作:添加、删除、清空、遍历(读取)、是否为空、获取大小等。

1.1、List是有序的队列,每一个元素都一个索引,第一个元素的索引值是0,与set不同,List允许重复的元素。注意indexof和lastindexof的不同。

1.2、set不允许重复

1.3、AbstractCollection是一个抽象类,实现了Collection的大部分函数,除了size和迭代器。方便其他类实现collection。

1.3.1、AbstractList

1.3.2、AbstractSet

1.3.1.1、ArrayList 是数组队列,相当于动态数组,非线程安全。使用场景:需要快速随机访问元素

1.3.1.2、LinkedList是一个双向链表,注意其常用api,可以实现队列和栈结构。LinkedList顺序访问高效,而随机访问效率比较低,因为双向链表和索引值联系起来,将索引值与链表中间的索引比较,小,从头开始,大,从后面开始。所以遍历链表用for(Integer i : list),千万别用for(int i : i < size; i++)访问。使用场景:需要快速插入、删除元素

1.3.1.3、vector是矢量队列,是线程安全的。使用场景:需要在多线程操作,并且list同时背多个线程操作。

辨析:arraylist和linkedlist、arraylist和vector

 

1.2、Map

 

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值