我正在练习堆栈和队列,并对它们有一些疑问(主要是在队列中)
我如何在代码中实现队列?
package *****;
import java.util.*;
public class stackPractice {
/**
* @param args
*/
public static void main(String[] args) {
Stack st = new Stack();
Queue q = new Queue();
st.push(100);
st.push(90);
st.push(70);
System.out.println(st);
//st.pop();
System.out.println(st.pop());
System.out.println(st);
System.out.println(st.peek());
//value = st.peek();
}
}
我让Stack st作为堆栈工作,但Queue给了我一些问题
在新的第二个队列之后,有一条红色的波浪线表示“无法实例化类型队列”。
Queue q = new *Queue*();
我不确定这意味着什么。
--- ---编辑
我知道队列没有实际的代码可以做任何事情(入队,出队等等)。
答案 0 :(得分:1)
答案 1 :(得分:0)
Queue
是一个接口,接口无法直接实例化。使用其中一个实现来创建接口的实例
Queue<String> q = new LinkedList<String>();
答案 2 :(得分:0)
Queue是一个接口,因此您无法实例化它,但您需要“实现”它。
请参阅http://docs.oracle.com/javase/7/docs/api/java/util/Queue.html
答案 3 :(得分:0)
Queue is an interface并且无法实例化。
您可以使用LinkedList。或其中一个listened:
AbstractQueue, ArrayBlockingQueue, ConcurrentLinkedQueue, DelayQueue, LinkedBlockingQueue, LinkedList, PriorityBlockingQueue, PriorityQueue, SynchronousQueue