2012-10-08 13 views

risposta

18

Il più veloce è utilizzare un LinkedList in primo luogo che può essere utilizzato come elenco o coda.

Queue q = new LinkedList(); 
List l = (List) q; 

In caso contrario è necessario prendere una copia

List l = new ArrayList(q); 
3
Queue queue = new LinkedList(); 
... 
List list = new ArrayList(queue); 
1

Google:

Queue fruitsQueue = new LinkedList(); 
fruitsQueue.add("Apples"); 
fruitsQueue.add("Bananas"); 
fruitsQueue.add("Oranges"); 
fruitsQueue.add("Grapes"); 

List fruitsList = new ArrayList(fruitsQueue); 
3

Passo Queue Per ArrayList Constructor

Il modo più semplice per creare un semplice ArrayList e superare il tuo Queue come argomento in il constructor di ArrayList che prende uno Collection. A Queue è un Collection, quindi funziona.

Questo è il modo più semplice e credo modo più veloce troppo.

List<?> list = new ArrayList<>(myQueue); 
+1

Dovrebbe essere la risposta accettata, è l'unico a rivolgersi direttamente alla domanda. La domanda si riferiva all'interfaccia ['Queue'] (http://docs.oracle.com/javase/8/docs/api/java/util/Queue.html). Esistono molte implementazioni di Queue, entrambe in bundle con Java e trovate in altre librerie come [Google Guava] (https://github.com/google/guava). Le altre risposte si riferiscono solo a ['LinkedList'] (http://docs.oracle.com/javase/8/docs/api/java/util/LinkedList.html) che è solo una delle molte implementazioni. –