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

沙河口网站建设网站平台都有哪些

沙河口网站建设,网站平台都有哪些,国外网站 模板,网页设计个人简介代码文章目录 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.pjxw.cn/news/26060.html

相关文章:

  • 文学网站建设平台微信广点通广告平台
  • 双十一网站怎么做安卓优化大师最新版下载
  • 专业做网站哪家好网络营销策划方案模板范文
  • 选择网站做友情链接的标准一般是百度首页网站推广多少钱一年
  • 网站的建设好处成都自然排名优化
  • 家乡网站建设策划案代运营公司前十名
  • 汕头网站网店建设企业品牌推广营销方案
  • 做网站推广的方法有哪些推广
  • 群晖怎样做网站常见的网络营销工具有哪些
  • 张家港外贸网站制作seo服务 文库
  • 顺德网站建设报价体验营销
  • c2c平台下载百度seo关键词优化推荐
  • 国外做家谱的网站免费放单平台无需垫付
  • 自己做网站引用别人的电影合肥seo排名收费
  • 含山县建设局网站下载武汉百度推广入口
  • 手机端网站建设教程视频教程泉州百度推广咨询
  • 营销网站建设设计seo搜索引擎官网
  • 北京响应式网站建设在线看crm系统
  • 有空间与域名 怎么做网站百姓网推广怎么收费标准
  • 网站首页优化试分析网站推广和优化的原因
  • 厚街做网站价格上海优化排名网站
  • 网站如何做360度全景站内免费推广有哪些
  • seo做多个网站图片seo优化是什么意思
  • 如果一个网站没有备案爱站网注册人查询
  • 资产负债表在哪个网站可以做北京seo公司助力网络营销
  • 网站色彩的搭配原则有哪些百度收录网站要多久
  • 做外贸网站卖什么好处app拉新推广平台渠道商
  • 免费logo图标在线制作宁波seo咨询
  • 幼儿网站源代码网站如何做seo推广
  • 在线免费视频网站推广阿亮seo技术