Java

ArrayList

特殊用法

常用API

image.png
image.png
image.png

LinkedList

特殊用法

可以使用LinkedList来充当 栈和队列,主要用到addFirst,addLast,getFirst,getLast等。通过先进先出或者先进后出来实现栈或队列

常用API

  1. public boolean add(E e),链表末尾添加元素,返回是否成功;
  2. public void add(int index, E element),向指定位置插入元素;
  3. public boolean addAll(Collection<? extends E> c),将一个集合的所有元素添加到链表后面,返回是否成功;
  4. public boolean addAll(int index, Collection<? extends E> c),将一个集合的所有元素添加到链表的指定位置后面,返回是否成功;
  5. public void addFirst(E e),添加到第一个元素;
  6. public void addLast(E e),添加到最后一个元素;
  7. public boolean offer(E e),向链表末尾添加元素,返回是否成功;
  8. public boolean offerFirst(E e),头部插入元素,返回是否成功;
  9. public boolean offerLast(E e),尾部插入元素,返回是否成功;

  1. public void clear(),清空链表;
  2. public E removeFirst(),删除并返回第一个元素;
  3. public E removeLast(),删除并返回最后一个元素;
  4. public boolean remove(Object o),删除某一元素,返回是否成功;
  5. public E remove(int index),删除指定位置的元素;
  6. public E poll(),删除并返回第一个元素;
  7. public E remove(),删除并返回第一个元素;

  1. public E set(int index, E element),设置指定位置的元素;

  1. public boolean contains(Object o),判断是否含有某一元素;
  2. public E get(int index),返回指定位置的元素;
  3. public E getFirst(), 返回第一个元素;
  4. public E getLast(),返回最后一个元素;
  5. public int indexOf(Object o),查找指定元素从前往后第一次出现的索引;
  6. public int lastIndexOf(Object o),查找指定元素最后一次出现的索引;
  7. public E peek(),返回第一个元素;
  8. public E element(),返回第一个元素;
  9. public E peekFirst(),返回头部元素;
  10. public E peekLast(),返回尾部元素;

其他

  1. public Object clone(),克隆该列表;
  2. public Iterator<E> descendingIterator(),返回倒序迭代器;
  3. public int size(),返回链表元素个数;
  4. public ListIterator<E> listIterator(int index),返回从指定位置开始到末尾的迭代器;
  5. public Object[] toArray(),返回一个由链表元素组成的数组;
  6. public <T> T[] toArray(T[] a),返回一个由链表元素转换类型而成的数组;

Stack

  1. E push(E item)
  2. 把项压入堆栈顶部。
  3. E pop()
  4. 移除堆栈顶部的对象,并作为此函数的值返回该对象。
  5. E peek()
  6. 查看堆栈顶部的对象,但不从堆栈中移除它。
  7. boolean empty()
  8. 测试堆栈是否为空。
  9. int search(Object o)
  10. 返回对象在堆栈中的位置,以 1 为基数。

注:Stack类没有size方法!