21
mar.
2013
mar.
2013
Une petite astuce en passant : comment parcourir une liste en sens inverse, à l'aide d'un itérateur ?
En utilisant un ListIterator
, qui dispose de méthodes hasPrevious()
et previous()
:
List<Integer> nums = Arrays.asList(1, 2, 3, 4, 5); ListIterator<Integer> it = nums.listIterator(nums.size()); while(it.hasPrevious()) { Integer num = it.previous(); System.out.println(num); }
5 4 3 2 1
Ca peut toujours servir !
Commentaires
Interesting!
Du coup, on peut assez facilement utiliser le foreach en backward:
Avec:
public class ReverseIterable<T> implements Iterable<T> {
}
Oui, ta solution ressemble beaucoup à celle de Guava : http://guava-libraries.googlecode.c...)