安卓队列 vs 栈

7
为什么java.util.Stack可以在Android活动中使用简单的构造函数创建一个新的Stack
Stack < ImageView> stack = new Stack< ImageView>();

我为什么不能像java.util.Stack一样使用构造函数来创建java.util.Queue呢?难道队列不应该有类似的构造函数吗?奇怪的是,在http://developer.android.com/reference/java/util/Stack.html上,它说Stack有一个公共构造函数,但在http://developer.android.com/reference/java/util/Queue.html上,我没有看到类似的构造函数。为什么会这样?例如,如何创建一个ImageView元素的Queue?谢谢。
2个回答

21

因为Queue是一个接口,你应该使用LinkedList对其进行初始化:

Queue<String> qe = new LinkedList<String>();

qe.add("b");
qe.add("a");
qe.add("c");

//Traverse queue
Iterator it = qe.iterator();

System.out.println("Initial Size of Queue :" + qe.size());

while(it.hasNext())
{
   String iteratorValue = (String) it.next();
   System.out.println("Queue Next Value :" + iteratorValue);
}

5

之所以需要一个类来创建Queue对象,是因为Queue只是一个接口。这个类要实现Queue方法。

一些实际的Queue实现:链接


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接