[Commons]——迭代器

来源:互联网 发布:老男孩大数据百度云 编辑:程序博客网 时间:2024/05/21 17:36
public class test6 {public static void main(String[] args) {//MapIterator();//uniqueIterator();//filterIterator();//loopIterator();arrayIterator();}public static void arrayIterator(){int[] array={1,2,3,4,5,6};//Iterator<Integer> iterator=new ArrayListIterator(array);Iterator<Integer> iterator=new ArrayListIterator<>(array, 2, 4);//指定起始索引和结束索引while (iterator.hasNext()) {System.out.println(iterator.next());}}public static void loopIterator(){List<String> list=new ArrayList<String>();list.add("dad");list.add("Tom");list.add("mom");Iterator<String> iterator=new LoopingListIterator<>(list);for(int i=0;i<5;i++){System.out.println(iterator.next());}}public static void filterIterator(){//自定义迭代器 filteriterator 自定义过滤器+predicateList<String> list=new ArrayList<String>();list.add("dad");list.add("Tom");list.add("mom");Predicate<String> pre=new Predicate<String>() {@Overridepublic boolean evaluate(String string) {return new StringBuilder(string).reverse().toString().equals(string);}};Iterator<String> iterator=new FilterIterator<>(list.iterator(), pre);while (iterator.hasNext()) {System.out.println(iterator.next());}}public static void uniqueIterator(){//去重迭代器List<String> list=new ArrayList<String>();list.add("a");list.add("b");list.add("c");Iterator<String> iterator=new UniqueFilterIterator<String>(list.iterator());while(iterator.hasNext()){System.out.println(iterator.next());}}public static void MapIterator(){//Map迭代器IterableMap<String, String> map=new HashedMap<String,String>();map.put("a", "good");map.put("b", "very good");map.put("c", "pretty");MapIterator<String, String> mapIterator=map.mapIterator();while(mapIterator.hasNext()){String key=mapIterator.next();String value=mapIterator.getValue();System.out.println(key+"--->"+value);}}}

0 0