List简介(二)

Java集合系列

List简介

vector

Vector是矢量队列,是JDK1.0版本添加的类。JDK1.2版本中做了变更,继承于AbstractList,实现了List, RandomAccess, Cloneable,继承了AbstractList。

在Vector中存在一些方法功能和List接口中的功能是类似的,但是方法名不同这些方法不建议使用,但是也可以使用;

  • 实现了List;所以它是一个队列,支持相关的添加、删除、修改、遍历等功能。

  • 实现了RandmoAccess接口,即提供了随机访问功能。(RandmoAccess是java中用来被List实现,为List提供快速访问功能的。)在Vector中,我们即可以通过元素的序号快速获取元素对象;这就是快速随机访问。

  • 实现了Cloneable接口,即实现clone()函数。它能被克隆。

Vector的扩容:初始容量10,扩容一倍 10->20->40->80

和ArrayList不同,Vector中的操作是线程安全的(意味着执行效率低)。

【构造函数】

【方法实例】

stack

Stack:栈,特性是先进后出(FILO, First In Last Out)

java工具包中,Stack继承于Vector(矢量队列),由于Vector是通过数组实现的,意味着Stack也是通过数组实现的,而非链表。

当然,我们也可以将LinkedList当作栈来使用。

【构造方法】

Stack()//仅此一个

【常用API】

  • boolean empty()
  • synchronized E peek()
  • synchronized E pop()
  • E push(E object)
  • synchronized int search(Object o)//返回对象在堆栈中的位置,以1为基数(栈顶)

【实例】

posted @ 2020-06-11 10:31  仰观云  阅读(169)  评论(0编辑  收藏  举报
Live2D