public class ArrayListQueue<E> implements Queue<E> {
    private java.util.List<E> list = new java.util.ArrayList<E>();
    public boolean isEmpty() {  return this.list.isEmpty();  }
    public E peek() {  return this.list.get(0);  }
    public E poll() {  return this.list.remove(0);  }
    public boolean offer(E elem) {
        this.list.add(elem);
        return true;
    }
    public static void main(String[] args) {
        Queue<Integer> queue = new ArrayListQueue<Integer>();
        for (int i = 0; i < 100; i++) {
            queue.offer(i*i);
        }
        while (!queue.isEmpty()) {
            System.out.println(queue.poll());
        }
    }
}

