Java 使用arraylist的堆栈操作
我在网上四处寻找,发现了一个在堆栈操作中使用ArrayList的类。在查找arraylist之后,我注意到那里也有Java 使用arraylist的堆栈操作,java,arraylist,stack,Java,Arraylist,Stack,我在网上四处寻找,发现了一个在堆栈操作中使用ArrayList的类。在查找arraylist之后,我注意到那里也有名称。我一直遵循它回到集合,我不明白在这个例子中,是什么: public class MyStack<E> { private ArrayList<E> arrList; public MyStack() { arrList = new ArrayList<E>(); } public void push(E i
名称。我一直遵循它回到集合,我不明白在这个例子中,
是什么:
public class MyStack<E> {
private ArrayList<E> arrList;
public MyStack() {
arrList = new ArrayList<E>();
}
public void push(E item) {
arrList.add(item);
}
... more methods...
}
公共类MyStack{
私有数组列表;
公共MyStack(){
arrList=新的ArrayList();
}
公共无效推送(E项){
列表。添加(项目);
}
…更多方法。。。
}
“E”指的是什么?如果在文档中有解释,我要么错过了,要么就是不明白
表示将在堆栈中使用的数据类型。简单的例子就足够了:
MyStack<String> myStack = new MyStack<String>();
myStack.push("Sample string");
MyStack MyStack=new MyStack();
myStack.push(“样本字符串”);
这被称为这些是。这样,您就不必事先确切地指定要在数据结构中存储的对象类型。您只需要在这样创建堆栈实例时知道对象类型
MyStack<String> stack = new MyStack<String>();
尝试添加任何其他内容将导致编译错误:
stack.add(new Integer()); // Compiler error
stack.add(2); // Compiler error
是要从堆栈中推送或弹出的数据或对象。你可以在中找到关于这个主题的更多信息。你知道,你已经有了一个Java类?。。。这里是@RohitJain,您知道最好使用实现的,因为它不像建议的java.util.Stack
那样继承自java.util.Vector
?您到底想问什么?“What do reference?”似乎不是一个有效的句子…E是一个类型变量,请参阅以了解GenericsThank。我正在上一门初级课程,我不记得以前遇到过这种情况。事实上,我浏览了一下阅读列表,其中没有一个提到它(虽然有数百个链接,可能在那里)
stack.add(new Integer()); // Compiler error
stack.add(2); // Compiler error