JAL-1645 source formatting and organise imports
[jalview.git] / src / jalview / util / ReverseListIterator.java
1 package jalview.util;
2
3 import java.util.Iterator;
4 import java.util.List;
5 import java.util.ListIterator;
6
7 /**
8  * An iterator that traverses a list backwards.
9  * 
10  * @author gmcarstairs (and checked against
11  *         org.codehaus.groovey.runtime.ReverseListIterator)
12  *
13  * @param <E>
14  */
15 public class ReverseListIterator<E> implements Iterator<E>
16 {
17
18   private ListIterator<E> iterator;
19
20   public ReverseListIterator(List<E> stuff)
21   {
22     this.iterator = stuff.listIterator(stuff.size());
23   }
24
25   @Override
26   public boolean hasNext()
27   {
28     return iterator.hasPrevious();
29   }
30
31   @Override
32   public E next()
33   {
34     return iterator.previous();
35   }
36
37   @Override
38   public void remove()
39   {
40     iterator.remove();
41   }
42
43 }