java库中具体的集合

1.ArrayList:一种可以动态增长和缩减的索引序列(动态的数组不是真正的链表)

List listOfMovies = new ArrayList();
多态性:
用list作为一种变量来存储ArrayList对象 ,为接口编程。list未接口,其子类有ArrayList,linkedlist,vector. 无论您传递LinkedList,Vector还是ArrayList,使用List编写的任何程序都将按预期工作,因为它们都实现了List接口。

2.LinkedList(链表):一种可以在任何位置进行高效的插入和删除操作的有序序列。
在java的程序设计语言中, 所有链表实际上都是双向链接的——即每个结点还存放着指向前驱节点的引用;

 一个刚刚由iterator方法返回并当用指向链表表头的迭代器调用add操作时,添加到元素将变成列表的表头。

越过最后一个元素时(hasNext返回false),变成链表的新表尾。 有n个元素,就有n+1个位置可以添加新元素。

3.散列集
快速的查找所需要的对象,不在意元素的位置,,散列表为每个对象计算了一个整数,称为散列码(hash code),a.equal(b)为true必须散列码相同。
散列表有链表数组(数组+链表)组成。每个列表称为桶,散列码与桶的总数取余的值为桶的索引。

3.1 hashset(实现了基于散列表的集)

4.TreeSet(树集)
数据结构:红黑树
比较元素必须实现commparable接口

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值