package com.towel.collections;
import java.util.List;
public class ListNavigator<T> implements Navigator<T> {
private int currentIndex;
private List<T> list;
public ListNavigator(List<T> list) {
this.list = list;
}
@Override
public int size() {
return list.size();
}
@Override
public T get(int idx) {
return list.get(idx);
}
@Override
public T next() {
currentIndex++;
if (currentIndex == size())
currentIndex = size() - 1;
return get(currentIndex);
}
@Override
public T previous() {
currentIndex--;
if (currentIndex == -1)
currentIndex = 0;
return get(currentIndex);
}
}