Question: What is the fastest way to convert a `Queue` into a `List` while keeping the Queue order?

Answer: 
Pass `Queue` To `ArrayList` Constructor
=======================================

The easiest way to just create a [`ArrayList`](http://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html) and pass your [`Queue`](http://docs.oracle.com/javase/8/docs/api/java/util/Queue.html) as an argument in the [constructor](http://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html#ArrayList-java.util.Collection-) of ArrayList that takes a [`Collection`](http://docs.oracle.com/javase/8/docs/api/java/util/Collection.html). A `Queue` is a `Collection`, so that works.

This is the easiest way and I believe fastest way too.

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

```
Answering to old question for users who are already on java 8  

Java 8 provides the option of using streams and you can get a list from queue as:

For example:  

```
Queue<Student> queue = new LinkedList<>();
        Student s1 = new Student("A",2);
        Student s2 = new Student("B",1);
        Student s3 = new Student("C",3);
        queue.add(s1);
        queue.add(s2);
        queue.add(s3);

    List<Student> studentList = queue.stream().collect(Collectors.toCollection(ArrayList::new));

```