Android队列与堆栈

use*_*863 7 java android

为什么java.util.Stack允许我Stack使用简单的构造函数在android活动中创建一个新的:

Stack < ImageView> stack = new Stack< ImageView>();
Run Code Online (Sandbox Code Playgroud)

而我不能这样做java.util.Queue?队列不应该有类似的构造函数吗?奇怪的是http://developer.android.com/reference/java/util/Stack.html它说它Stack有一个公共构造函数,并且在http://developer.android.com/reference/java/util/Queue.html上我没有看到队列的类似构造函数..为什么会这样?什么是有路QueueImageView,例如元素?谢谢.

R4j*_*R4j 19

因为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);
}
Run Code Online (Sandbox Code Playgroud)


Bal*_*des 5

这是因为Queue只是一个界面.要创建Queue对象,您需要一个类,它实现了Queue的方法.

Queue:link的一些实际实现