jpaul.DataStructs
Class ReverseListView<E>

java.lang.Object
  extended by java.util.AbstractCollection<E>
      extended by java.util.AbstractList<E>
          extended by jpaul.DataStructs.ReverseListView<E>
All Implemented Interfaces:
java.io.Serializable, java.lang.Iterable<E>, java.util.Collection<E>, java.util.List<E>

public class ReverseListView<E>
extends java.util.AbstractList<E>
implements java.io.Serializable

ReverseViewList is an immutable, reverse view of a List. The main thing you can do with it is iterate, eg, for(Element e : new ReverseListView(list)). In addition, you can call get and size.

Version:
$Id: ReverseListView.java,v 1.3 2006/03/14 02:29:31 salcianu Exp $
Author:
Alexandru Salcianu - salcianu@alum.mit.edu
See Also:
Serialized Form

Field Summary
 
Fields inherited from class java.util.AbstractList
modCount
 
Constructor Summary
ReverseListView(java.util.List<E> origList)
          Creates a reverse view of origList.
 
Method Summary
 E get(int index)
          Returns the ith element from the end of the original list.
 java.util.Iterator<E> iterator()
           
 java.util.ListIterator<E> listIterator()
           
 int size()
          Returns the size of the original list.
 
Methods inherited from class java.util.AbstractList
add, add, addAll, clear, equals, hashCode, indexOf, lastIndexOf, listIterator, remove, removeRange, set, subList
 
Methods inherited from class java.util.AbstractCollection
addAll, contains, containsAll, isEmpty, remove, removeAll, retainAll, toArray, toArray, toString
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface java.util.List
addAll, contains, containsAll, isEmpty, remove, removeAll, retainAll, toArray, toArray
 

Constructor Detail

ReverseListView

public ReverseListView(java.util.List<E> origList)
Creates a reverse view of origList.

Method Detail

get

public E get(int index)
Returns the ith element from the end of the original list.

Specified by:
get in interface java.util.List<E>
Specified by:
get in class java.util.AbstractList<E>

size

public int size()
Returns the size of the original list.

Specified by:
size in interface java.util.Collection<E>
Specified by:
size in interface java.util.List<E>
Specified by:
size in class java.util.AbstractCollection<E>

iterator

public java.util.Iterator<E> iterator()
Specified by:
iterator in interface java.lang.Iterable<E>
Specified by:
iterator in interface java.util.Collection<E>
Specified by:
iterator in interface java.util.List<E>
Overrides:
iterator in class java.util.AbstractList<E>

listIterator

public java.util.ListIterator<E> listIterator()
Specified by:
listIterator in interface java.util.List<E>
Overrides:
listIterator in class java.util.AbstractList<E>


Copyright 2005 Alexandru Salcianu - salcianu@alum.mit.edu