importjava.util.*;publicclassStringStack{privateLinkedList<String>linkedList;publicStringStack(){linkedList=newLinkedList<String>();}publicvoidpush(Stringname){//将元素加入串行前端linkedList.addFirst(name);}publicStringtop(){//取得串行第一个元素returnlinkedList.getFirst();}publicStringpop(){//移出第一个元素returnlinkedList.removeFirst();}publicbooleanisEmpty(){//串行是否为空returnlinkedList.isEmpty();}publicstaticvoidmain(String[]args){StringStacksstack=newStringStack();sstack.push("first");sstack.push("second");sstack.push("third");while(!sstack.isEmpty()){System.out.println(sstack.pop());}}}上述的类是一个存储String类对象的栈,请将其改造为泛型类GenericStack,该类支持存储泛型类对象的元素。
时间: 2024-02-09 17:08:33 浏览: 72
改造后的泛型类GenericStack代码如下:
```
import java.util.*;
public class GenericStack<E> {
private LinkedList<E> linkedList;
public GenericStack() {
linkedList = new LinkedList<E>();
}
public void push(E element) { // 将元素加入串行前端
linkedList.addFirst(element);
}
public E top() { // 取得串行第一个元素
return linkedList.getFirst();
}
public E pop() { // 移出第一个元素
return linkedList.removeFirst();
}
public boolean isEmpty() { // 串行是否为空
return linkedList.isEmpty();
}
public static void main(String[] args) {
GenericStack<String> stack = new GenericStack<String>();
stack.push("first");
stack.push("second");
stack.push("third");
while (!stack.isEmpty()) {
System.out.println(stack.pop());
}
}
}
```
在原有的类定义上,我们增加了一个泛型类型参数E,并在相关的地方使用了这个泛型类型。这样,我们就可以使用该类来存储任意类型的元素了。
阅读全文
相关推荐
![-](https://img-home.csdnimg.cn/images/20241231044955.png)
![-](https://img-home.csdnimg.cn/images/20241231044937.png)
![-](https://img-home.csdnimg.cn/images/20241231044833.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![rar](https://img-home.csdnimg.cn/images/20241231044955.png)
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![-](https://img-home.csdnimg.cn/images/20241231045021.png)
![-](https://img-home.csdnimg.cn/images/20241231044930.png)