使用带有字符串并发症的ArrayStack ADT(java)

时间:2014-02-26 15:20:07

标签: java generics stack

我有一个使用泛型的ArrayStack类。在另一个类中,我使用了这个ArrayStack来接受字符串。当我调用pop()方法时,Stack返回顶部对象。我遇到的问题是,当我尝试这样做时:

//temp is a String
//tempStack is an ArrayStack<String>
temp = tempStack.pop();

我收到以下错误:

incompatible type
required: java.lang.String
found: java.lang.Object

如何让我的编译器知道pop()在此实例返回一个String?

1 个答案:

答案 0 :(得分:2)

你是如何实例化tempStack的?它应该是这样的:

ArrayStack<String> tempStack = new ArrayStack<String>();

pop()方法应返回泛型类型:

public T pop() {
    // implementation details
}