当前位置: 首页 > news >正文

网站一键备份河北青山建设集团有限公司网站

网站一键备份,河北青山建设集团有限公司网站,家居公司网站建设方案ppt,宣传推广文案类型#xff1a;行为型模式 实现原理#xff1a;提供一种方法顺序访问一个聚合对象中各个元素, 而又无须暴露该对象的内部表示。 作用#xff1a;用于顺序访问集合对象的元素#xff0c;不需要知道集合对象的底层表示 解决的问题#xff1a;不同的方式遍历整个整合对象…类型行为型模式 实现原理提供一种方法顺序访问一个聚合对象中各个元素, 而又无须暴露该对象的内部表示。 作用用于顺序访问集合对象的元素不需要知道集合对象的底层表示 解决的问题不同的方式遍历整个整合对象的问题 何时使用遍历一个聚合对象。 解决的方法让迭代器访问元素而不是聚合对象。 实现核心定义接口hasNext, next。 应用实例文件系统遍历 优点 1、支持以不同的方式遍历一个聚合对象。 2、简化聚合类。 3、在同一个聚合上可以有多个遍历。 4、增加新的聚合类和迭代器类方便 缺点增加新的聚合类需要对应增加新的迭代器类类的个数成对增加系统的复杂性随之增加。 使用场景1、需要不暴露内部信息地访问聚合对象的内容 2、需要为聚合对象提供多种遍历方式。 3、为遍历不同的聚合结构提供一个统一的接口。 实现 步骤 1 创建接口:Iterator.java public interface Iterator {public boolean hasNext();public Object next(); } Container.java public interface Container {public Iterator getIterator(); } 步骤 2 创建实现了 Container 接口的实体类。该类有实现了 Iterator 接口的内部类 NameIterator。NameRepository.java public class NameRepository implements Container {public String[] names {Robert , John ,Julie , Lora};Overridepublic Iterator getIterator() {return new NameIterator();}private class NameIterator implements Iterator {int index;Overridepublic boolean hasNext() {if(index names.length){return true;}return false;}Overridepublic Object next() {if(this.hasNext()){return names[index];}return null;} } } 步骤 3 使用 NameRepository 来获取迭代器并打印名字。IteratorPatternDemo.java public class IteratorPatternDemo {public static void main(String[] args) {NameRepository namesRepository new NameRepository();for(Iterator iter namesRepository.getIterator(); iter.hasNext();){String name (String)iter.next();System.out.println(Name : name);} } } 步骤 4 执行程序输出结果Name : Robert Name : John Name : Julie Name : Lora 这段代码是一个简单的迭代器模式的示例。以下是对代码的解释步骤1定义接口Iterator 接口定义了迭代器的基本方法包括 hasNext() 方法用于检查是否有下一个元素以及 next() 方法用于获取下一个元素。Container 接口定义了获取迭代器的方法 getIterator()。步骤2创建实体类NameRepository 是实现了 Container 接口的具体类。 NameRepository 内部定义了一个私有的内部类 NameIterator它实现了 Iterator 接口用于遍历 names 数组中的元素。 NameIterator 类中的 index 变量用于追踪当前迭代的位置。 hasNext() 方法检查是否还有下一个元素如果 index 小于 names 数组的长度则返回 true。 next() 方法返回当前位置的元素并将 index 递增。 步骤3使用迭代器在 IteratorPatternDemo 类的主方法中首先创建一个 NameRepository 对象 namesRepository。 然后通过调用 namesRepository 的 getIterator() 方法获取一个迭代器对象 iter。 最后使用 iter 迭代器进行循环遍历通过调用 hasNext() 方法检查是否有下一个元素然后调用 next() 方法获取下一个元素。 将获取的元素打印出来。 步骤4输出结果执行程序后将依次输出数组 names 中的每个元素。 这段代码演示了如何使用迭代器模式来遍历和获取集合中的元素它提供了一种统一的方式来访问不同种类的集合或数据结构。
http://www.sadfv.cn/news/379891/

相关文章:

  • 佛山网站建设官网山东鲁中公路建设有限公司网站
  • 婚纱网站模板青岛网站推广关键词
  • 寮步网站仿做百度知道登录
  • 中国保密在线网站培训晋中做网站
  • 定制 网站郑州做网站最好的公司
  • 网站设计团队组织建设求是网
  • wordpress聊天插件seo技术自学
  • 顺德网站建设公司有哪些网站建设技能考试试题三
  • 北京好的网站建设公司免费下载软件的网站
  • 购物网站国外公司网站建设费用入什么费用
  • 常德网站公司做婚纱摄影网站价格
  • 沈阳做网站 熊掌号网站备案证图片
  • 横沥做网站的电话建站哪家好社区
  • 企业网站优化关键词网站备案账号是什么情况
  • 建设银行啦卡信用网站合肥营销网站建设
  • 建站资源网络规划设计师教程第二版下载
  • 哈尔滨网页设计模板网站wordpress porto主题
  • 商标设计logo网站我要表白网在线生成
  • 网站备案查询 怎么弄社交媒体营销案例
  • 昆明优化网站公司建设企业网银如何对账
  • 网站建设都包括什么轻创网
  • 天津市住房城乡建设部网站哪个网站做译员好
  • 商丘做网站优化网站建设需要什么研究条件
  • 程序员帮忙做放贷网站动态可视化wps图表制作
  • 百度推广和哪些网站有合作企业制作小程序
  • 企业网站建站的专业性原则是指网站信息内容应该体现建站目的和目标群体网站开发个性化
  • 专业网站排名优化公司平面网站模版
  • 网站开发的主要内容顺企网app下载
  • 大连市城市建设管理局网站福建新闻最新消息
  • 沈阳做网站有名公司有哪些小程序源码怎么导入