欢迎来到代码驿站!

JAVA代码

当前位置:首页 > 软件编程 > JAVA代码

java8 集合之Stack详解及实例

时间:2021-05-02 08:19:51|栏目:JAVA代码|点击:

java  集合之Stack

概要:

Stack是栈,特性是先进后出(FILO,First In Last Out)。Stack是继承于Vector(矢量队列),由于Vector是同数组实现的,Stack也是通过数组而非链表。

Stack和Collection关系如下:

基于Java8的源代码:

public class Stack<E> extends Vector<E> {

  public Stack() {//创建空栈
  }

  public E push(E item) {//入栈
    addElement(item);
    return item;
  }
  //出栈
  public synchronized E pop() {
    E    obj;
    int   len = size();
    obj = peek();
    removeElementAt(len - 1);
    return obj;
  }
  //返回栈顶元素,但并不出栈
  public synchronized E peek() {
    int   len = size();

    if (len == 0)
      throw new EmptyStackException();
    return elementAt(len - 1);
  }
  //判断栈是否为空
  public boolean empty() {
    return size() == 0;
  }
  //查找元素并返回栈深
  public synchronized int search(Object o) {
    int i = lastIndexOf(o);

    if (i >= 0) {
      return size() - i;
    }
    return -1;
  }

  //序列版本号
  private static final long serialVersionUID = 1224463164541339165L;
}

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

上一篇:JdbcTemplate方法介绍与增删改查操作实现

栏    目:JAVA代码

下一篇:Java多线程窗口售票问题实例

本文标题:java8 集合之Stack详解及实例

本文地址:http://www.codeinn.net/misctech/113249.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有