美文网首页
JavaSE MyStack

JavaSE MyStack

作者: 23b57d72cde7 | 来源:发表于2018-04-12 20:30 被阅读0次
import java.util.Stack;

    @SuppressWarnings("unused")
    public class MyStack<T> {
    T[] data;
    int m = 10;
    int a = 0;
    @SuppressWarnings("unchecked")
    public MyStack() {
        data = (T[]) new Object[m];
    }
    @SuppressWarnings("unchecked")
    public MyStack(int i) {
        data = (T[]) new Object[i];
        m = i;
    }
    // 压栈
    public void push(T o) {
        // 栈满 不能压 只能取
        if (m == a) {
            System.out.println("栈满了");
        } else {
            data[m - a - 1] = o;
            a++;
        }
    }
    // 出栈
    public T pop() {
        if (a == 0) {
            System.out.println("栈空了");
            return null;
        }
        T r = data[m - a];
        data[m - a] = null;
        a--;
        return r;
    }

    public static void main(String[] args) {
        MyStack<String> ms = new MyStack<String>(5);
        ms.push("张三");
        ms.push("李四");
        ms.push("王五");
        ms.push("张三");
        ms.push("李四");
        String s = ms.pop();
        String s1 = ms.pop();
        String s2 = ms.pop();
        String s3 = ms.pop();
        System.out.println(s);
    }
}

相关文章

网友评论

      本文标题:JavaSE MyStack

      本文链接:https://www.haomeiwen.com/subject/bxwfkftx.html