当前位置: 首页 > 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.khdw.cn/news/6994.html

相关文章:

  • 广告业网站开发今日热搜排行第一名
  • 肇庆市场核酸检测怎么给网站做优化
  • 高端网站建设成都深圳网络推广团队
  • 婚纱摄影网站设计高端网站建设公司哪家好
  • 企业站群cms武汉seo首页优化报价
  • 免费做网站怎么做网站吗2常用的网络营销方法及效果
  • 广西城市建设学校手机官方网站网站seo分析报告案例
  • 零基础做网站怎么搭建属于自己的网站
  • 做调查问卷网站24小时网站建设
  • 网站建设服类开票税点网站设计公司模板
  • 新网站上线怎么做seo百度关键词优化首选667seo
  • 个人网站开发协议重庆今日头条新闻消息
  • 深圳企业网站制作公司营销案例网站
  • 武汉北京网站建设站长之家whois查询
  • 怎么做网站平台教程怎么网络推广
  • 网站模板 音乐ai智能搜索引擎
  • 政务版企业微信app下载安装安庆seo
  • 增城微网站建设长沙排名优化公司
  • 真人性做爰免费网站苏州百度推广排名优化
  • 空气过滤棉上海网站建设企业文化内容范本
  • 算命先生的网站怎么做临沂森拓网络科技有限公司
  • 洛阳网站的优化百度百科怎么创建自己
  • 做一个模板网站多少钱汕头网站建设方案开发
  • 如何网站防止采集网络推广员工资多少钱
  • 网站试运营广告推广媒体
  • 推广型的网站怎么做8大营销工具指的是哪些
  • 做网站是怎么赚钱的比较好的友链平台
  • 宝山青岛网站建设人民政府网站
  • 西宁那有做网站的semaphore
  • 政府网站建设 会议seo外链工具软件