0

私はスタックとキューを使って練習していますが、それらについていくつか質問があります (主にキューについて)

コードにキューを実装するにはどうすればよいですか?

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 が問題を引き起こしています

new の後の 2 番目のキューには、「タイプ キューをインスタンス化できません」という赤い波線があります。

Queue q = new *Queue*();

それが何を意味するのかわかりません。

- -編集 - -

キューが何かを行うための実際のコードがまだないことはわかっています(エンキュー、デキューなど)。

4

4 に答える 4

1

StackはJavaのクラスですQueueが、インターフェースなのでインスタンス化できません。実装クラスの 1 つのコンストラクターを呼び出す必要があります。

于 2013-10-23T17:36:32.000 に答える
0

Queue はインターフェイスであり、インスタンス化できません。

LinkedListを使用できます。またはリッスンのいずれか:

   AbstractQueue, ArrayBlockingQueue, ConcurrentLinkedQueue, DelayQueue, LinkedBlockingQueue, LinkedList, PriorityBlockingQueue, PriorityQueue, SynchronousQueue
于 2013-10-23T17:38:45.507 に答える
0

Queueはインターフェイスであり、インターフェイスを直接インスタンス化することはできません。その実装の 1 つを使用して、インターフェイスのインスタンスを作成します

Queue<String> q = new LinkedList<String>();
于 2013-10-23T17:36:46.030 に答える