If you want that behaviour:
List<T> snake = new ArrayList<>(){
@Override
public T get(int i) {
return super.get((i + size()) % size());
}
};
This will work for any value of i.
If you want that behaviour:
List<T> snake = new ArrayList<>(){
@Override
public T get(int i) {
return super.get((i + size()) % size());
}
};
This will work for any value of i.