Java はジェネリックスを使用してスタック構造のサンプル共有を実装します

高洛峰
リリース: 2017-01-18 11:14:01
オリジナル
1389 人が閲覧しました

アイデア分析: スタック構造はジェネリックスを使用して実装されるため、JDK に付属するスタック パッケージは使用できません。LinkedList などのスタック構造を自分で定義する必要があります。

コードは次のとおりです:

Stack.java:

package cn.edu.xidian.crytoll;
import java.util.LinkedList;

public class Stack<T> {

    private LinkedList<T> container = new LinkedList<T>();

    public void push(T t) {
        container.addFirst(t);
    }

    public T pop() {
        return container.removeFirst();
    }

    public boolean empty() {
        return container.isEmpty();
    }
}
ログイン後にコピー

StackTest.java:

package cn.edu.xidian.crytoll;

public class StackTest {
    public static void main(String[] args) {
        Stack<String> stack = new Stack<String>();
        System.out.println("向栈中增加字符串:");
        System.out.println("视频学Java");
        System.out.println("细说Java");
        System.out.println("Java从入门到精通(第2版)");
        stack.push("视频学Java");  //向栈中增加字符串
        stack.push("细说Java");   //向栈中增加字符串
        stack.push("Java从入门到精通(第2版)"); //向栈中增加字符串
        System.out.println("从栈中取出字符串:");
        while (!stack.empty()) {
            System.out.println((String) stack.pop());//删除栈中全部元素并进行输出
        }
    }
}
ログイン後にコピー

ジェネリックを使用してスタック構造を実装するその他の Java の例については、PHP 中国語 Web サイトの関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート