Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/311.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用arraylist的堆栈操作_Java_Arraylist_Stack - Fatal编程技术网

Java 使用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

我在网上四处寻找,发现了一个在堆栈操作中使用ArrayList的类。在查找arraylist之后,我注意到那里也有
名称。我一直遵循它回到集合,我不明白在这个例子中,
是什么:

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