如何使这些堆栈通用?

时间:2014-10-21 13:31:24

标签: java generics stack

我有以下简单方法:

public static Stack transfer(Stack s) {  
    Stack t = new Stack();
    return t;
}

我打算填写更多功能,但我想让它适用于通用堆栈:

Stack<E>

其中E是堆栈中元素的泛型类型。我尝试了几种方法将元素添加到Stack,但无论我如何设置它,我似乎都会遇到错误。我知道这是一个基本问题,但我以前从未真正使用过堆栈,我只需指向正确的方向。

代码使用Eclipse,使用Eclipse。堆栈可以在java.util.Stack中找到

2 个答案:

答案 0 :(得分:3)

Stack类已经是通用的,但为了使transfer方法通用,您必须这样做:

public static <E> Stack<E> transfer(Stack<E> s) {  
    Stack<E> t = new Stack<E>();
    return t;
}

答案 1 :(得分:0)

您只需要为已经通用的类Stack<T>

提供类型作为类型参数
Stack<String> stringStack = new Stack<>();