下载 23种设计模式源码 :http://download.csdn.net/download/knight_black_bob/8936043
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
创建型模式,共五种:
工厂方法模式 抽象工厂模式 单例模式 建造者模式 原型模式
结构型模式,共七种:
适配器模式 装饰器模式 代理模式 外观模式 桥接模式 组合模式 享元模式
行为型模式,共十一种:
策略模式 模板方法模式 观察者模式 迭代子模式 责任链模式 命令模式
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
package 设计模式.迭代器模式; /** * @author baoyou E-mail:curiousby@163.com * @version 创建时间:2015年7月9日 上午10:09:15 * 类说明: */ public interface Iterator { public Object next(); public boolean hasNext(); }
package 设计模式.迭代器模式; import java.util.List; /** * @author baoyou E-mail:curiousby@163.com * @version 创建时间:2015年7月9日 上午10:09:50 类说明: */ public class ConcreteIterator implements Iterator { private List<Object> list; private int cursor = 0; public ConcreteIterator(List<Object> list) { this.list = list; } @Override public Object next() { Object obj = null; if (hasNext()) { obj = list.get(cursor++); } return obj; } @Override public boolean hasNext() { return cursor < list.size(); } }
package 设计模式.迭代器模式; /** * @author baoyou E-mail:curiousby@163.com * @version 创建时间:2015年7月9日 上午10:17:44 * 类说明: */ public interface Aggregate { public void add(Object obj); public void remove(Object obj); public Iterator iterator(); }
package 设计模式.迭代器模式; import java.util.List; /** * @author baoyou E-mail:curiousby@163.com * @version 创建时间:2015年7月9日 上午10:18:42 类说明: */ public class ConcreteAggregate implements Aggregate { private List<Object> list; public ConcreteAggregate(List<Object> list) { this.list = list; } public void add(Object obj) { list.add(obj); } public Iterator iterator() { return new ConcreteIterator(list); } public void remove(Object obj) { list.remove(obj); } }
package 设计模式.迭代器模式; import java.util.ArrayList; import java.util.List; /** * @author baoyou E-mail:curiousby@163.com * @version 创建时间:2015年7月9日 上午10:09:00 类说明: */ public class IteratorTest { static List<Object> list = new ArrayList<Object>(); static { for (int i = 0; i < 5; i++) { list.add(i +""); } } public static void main(String[] args) { Aggregate aggregate = new ConcreteAggregate(list); Iterator iterator = aggregate.iterator(); while (iterator.hasNext()) { String astr= (String) iterator.next(); System.out.print(astr + " "); } } }
捐助开发者
在兴趣的驱动下,写一个免费
的东西,有欣喜,也还有汗水,希望你喜欢我的作品,同时也能支持一下。 当然,有钱捧个钱场(右上角的爱心标志,支持支付宝和PayPal捐助),没钱捧个人场,谢谢各位。
谢谢您的赞助,我会做的更好!
相关推荐
设计模式之迭代器模式 设计模式之迭代器模式 设计模式之迭代器模式
23种设计模式之迭代器模式对迭代器模式进行了简单的介绍,并附带了例子程序,和大家分享
设计模式之迭代器模式(新) 设计模式之迭代器模式(新)
深入浅出Java设计模式之迭代器模式 _天极网
java设计模式之迭代器模式,从生活中的例子举例说明迭代器模式。
深入浅出学习Java设计模式之迭代器模式
迭代器(Iterator) 用意:可以顺序地访问一个集合中的元素而不必暴露集合中的内部表象。
深入浅出学习Java设计模式之迭代器模式[参考].pdf
这份文档以例子的形式讲诉了设计模式之迭代器与组合模式,希望可以帮助学习的人!
迭代器模式算是一个比较古老的设计模式,其源于对容器的访问,比如Java中的List、Map、数组等,我们知道对容器对象的访问必然会涉及遍历算法,我们可以将遍历的方法封装在容器中,或者不提供遍历方法。如果我们将...
本文实例讲述了Python设计模式之迭代器模式原理与用法。分享给大家供大家参考,具体如下: 迭代器模式(Iterator Pattern):提供方法顺序访问一个聚合对象中各元素,而又不暴露该对象的内部表示. 下面是一个迭代器模式...
设计模式的迭代器模式的例子,希望对大家有用~~~~~~~~
主要为大家详细介绍了javascript设计模式之迭代器模式,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
主要为大家详细介绍了C++设计模式之迭代器模式Iterator,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
设计模式-迭代器模式(讲解及其实现代码)
主要介绍了C++设计模式之迭代器模式,本文讲解了什么是迭代器模式、迭代器模式的代码实例等内容,需要的朋友可以参考下
迭代器设计模式代码示例--以最简单的代码诠释迭代器设计模式
主要为大家详细介绍了PHP设计模式之迭代器模式,感兴趣的小伙伴们可以参考一下