局部内部类的使用
?
import java.util.*;class ReversibleArrayList<T> extends ArrayList<T> {private static final long serialVersionUID = 7562533499281233061L;public ReversibleArrayList(Collection<T> c) {super(c);}public Iterable<T> reversed() {return new Iterable<T>() {public Iterator<T> iterator() {return new Iterator<T>() {int current = size() - 1;public boolean hasNext() {return current > -1;}public T next() {return get(current--);}public void remove() { // Not implemented}};}};}}/** * * * @date 2012-6-15 下午3:46:42 * */public class AdapterMethodIdiom {public static void main(String[] args) {ReversibleArrayList<String> ral = new ReversibleArrayList<String>(Arrays.asList("To be or not to be".split(" ")));// Grabs the ordinary iterator via iterator():for (String s : ral)System.out.print(s + " ");System.out.println();// Hand it the Iterable of your choicefor (String s : ral.reversed())System.out.print(s + " ");}