Heim  >  Artikel  >  Java  >  Java implementiert einfachen Stack-Code

Java implementiert einfachen Stack-Code

高洛峰
高洛峰Original
2017-01-24 14:42:271116Durchsuche

Das Beispiel in diesem Artikel enthält den spezifischen Code zum Implementieren eines einfachen Stapels in Java als Referenz. Der spezifische Inhalt lautet wie folgt:

/**
 * Created by Frank
 */
public class ToyStack {
  /**
   * 栈的最大深度
   **/
  protected int MAX_DEPTH = 10;
 
  /**
   * 栈的当前深度
   */
  protected int depth = 0;
 
  /**
   * 实际的栈
   */
  protected int[] stack = new int[MAX_DEPTH];
 
  /**
   * push,向栈中添加一个元素
   *
   * @param n 待添加的整数
   */
  protected void push(int n) {
    if (depth == MAX_DEPTH - 1) {
      throw new RuntimeException("栈已满,无法再添加元素。");
    }
    stack[depth++] = n;
  }
 
  /**
   * pop,返回栈顶元素并从栈中删除
   *
   * @return 栈顶元素
   */
  protected int pop() {
    if (depth == 0) {
      throw new RuntimeException("栈中元素已经被取完,无法再取。");
    }
 
    // --depth,dept先减去1再赋值给变量dept,这样整个栈的深度就减1了(相当于从栈中删除)。
    return stack[--depth];
  }
 
  /**
   * peek,返回栈顶元素但不从栈中删除
   *
   * @return
   */
  protected int peek() {
    if (depth == 0) {
      throw new RuntimeException("栈中元素已经被取完,无法再取。");
    }
    return stack[depth - 1];
  }
}

Das Obige ist hoffentlich der gesamte Inhalt Es wird für Ihr Studium hilfreich sein. Ich hoffe, dass jeder die chinesische PHP-Website unterstützt.

Weitere Artikel zur Java-Implementierung von einfachem Stack-Code finden Sie auf der chinesischen PHP-Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn