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

如何建设万网网站上海网站建设公司电话

如何建设万网网站,上海网站建设公司电话,做网站的可以注册个工作室吗,献县做网站价格文章目录 Java 设计模式之迭代器模式概述UML代码实现Java的迭代器 Java 设计模式之迭代器模式 概述 迭代器模式(Iterator),提供一种方法顺序访问一个聚合对象中的各个元素,而又不暴露该对象的内部表示。 UML Iterator:迭代器接口&#xff…

文章目录

  • Java 设计模式之迭代器模式
    • 概述
    • UML
    • 代码实现
    • Java的迭代器

Java 设计模式之迭代器模式

概述

  • 迭代器模式(Iterator),提供一种方法顺序访问一个聚合对象中的各个元素,而又不暴露该对象的内部表示。

UML

在这里插入图片描述

  • Iterator:迭代器接口,定义遍历方法。
  • ConcreteIterator:具体迭代器类,实现迭代器接口,负责遍历聚合对象中的元素。
  • Aggregate:聚合接口,定义创建迭代器方法。
  • ConcreteAggregate:具体聚合类,实现聚合接口,负责存储数据和创建迭代器对象。

代码实现

定义迭代器接口:

public interface Iterator<T> {boolean hasNext();T next();
}

定义具体迭代器类:

public class BookIterator implements Iterator<String> {private ArrayList<String> bookList;private int position = 0;public BookIterator(ArrayList<String> bookList) {this.bookList = bookList;}@Overridepublic boolean hasNext() {return position < bookList.size();}@Overridepublic String next() {if (hasNext()) {return bookList.get(position++);}return null;}
}

定义聚合接口:

public interface Aggregate<T> {Iterator<T> createIterator();
}

定义具体聚合类:

public class BookCollection implements Aggregate<String> {private ArrayList<String> bookList = new ArrayList<>();public void addBook(final String book) {bookList.add(book);}@Overridepublic Iterator<String> createIterator() {return new BookIterator(bookList);}
}

使用:

public class Client {public static void main(String[] args) {BookCollection bookCollection = new BookCollection();bookCollection.addBook("西游记");bookCollection.addBook("水浒传");bookCollection.addBook("红楼梦");bookCollection.addBook("三国演义");Iterator<String> iterator = bookCollection.createIterator();while (iterator.hasNext()) {System.out.println(iterator.next());}}
}

输出:

西游记
水浒传
红楼梦
三国演义

Java的迭代器

Java 提供了迭代器的相关接口:

// java.util.Iterator.javapublic interface Iterator<E> {   boolean hasNext();E next();
}
// java.util.ListIterator.javapublic interface ListIterator<E> extends Iterator<E> {  boolean hasNext(); E next(); boolean hasPrevious(); E previous();
}
http://www.dtcms.com/wzjs/812774.html

相关文章:

  • wordpress天气插件莱芜做网站优化
  • 网站上传程序流程阳江做网站的公司
  • 手机网站快速建站网站建设开发合同范本
  • 开发网站去哪里学潜江资讯网免费发布
  • 最好的app制作网站建站平台和网站建设的区别
  • 辽宁建设厅勘察设计网站软件外包公司怎么样
  • 大良营销网站建设效果提供北京国互网网站建设
  • 怎样可以有自己的网站代理公司注册要多久
  • 孝感市网站建设公司宣传册模板免费下载
  • 合肥需要做网站的公司做网站建设销售工资
  • 网站修改关键字用ps做网站的临摹
  • 设计方案参考网站wordpress后台代码修改
  • apache添加多个网站网页设计与制作100例论文
  • 网站开发的公司电话广告做图网站
  • 网站建设在电访销售话术php语言做的大网站
  • 做企业网站什么软件好移动电商网站开发
  • 网站搜索防止攻击房地产网站设计方案
  • 动物做logo的网站软文广告代理平台
  • 用于制作网站的软件做公司网站有用吗
  • 东明网站建设推广牛商网网站建设
  • 一个服务器做一样的网站吗藤虎广州网站建设
  • 网站加在线qq长春seo网站优化
  • 前端开发人员怎么做网站快手免费推广软件
  • 荆门网站开发公司wordpress没有路径
  • 装饰公司网站源码下载无锡做网站公司哪家比较好
  • 百度做的网站能优化吗太平阳电脑网网站模板
  • 单页营销式网站模板下载wordpress城市插件
  • 互联网网站建设计划书客户又找不到你
  • 网站策划与制作广州头条新闻最新
  • 网站开发常用的流程画册设计公司网站