Created
April 15, 2022 08:48
-
-
Save massimilianochiodi/d0875be8a4756050d8e1b9833c5e2315 to your computer and use it in GitHub Desktop.
Reverse order of List / Arraylist ( java )
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
public class Reversed<T> implements Iterable<T> { | |
private final List<T> original; | |
public Reversed(List<T> original) { | |
this.original = original; | |
} | |
@NonNull | |
public Iterator<T> iterator() { | |
final ListIterator<T> i = original.listIterator(original.size()); | |
return new Iterator<T>() { | |
public boolean hasNext() { return i.hasPrevious(); } | |
public T next() { return i.previous(); } | |
public void remove() { i.remove(); } | |
}; | |
} | |
public static <T> Reversed<T> reversed(List<T> original) { | |
return new Reversed<T>(original); | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment