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

相关文章:

  • 建设btob网站需要多少资金/免费收录网站
  • 国外推广网站有哪些/北京网站seo技术厂家
  • 安徽中兴建设工程有限公司网站/免费网站注册免费创建网站
  • 企业网站建设现状/今日头条搜索引擎
  • 搭建网站的价格/网站如何进行seo
  • 东莞做网站ab0769/手机优化软件哪个好用
  • 网站让百度收录应该怎么做/武汉关键词seo排名
  • 找个网页公司做网站/广告传媒公司
  • 山东济南疫情最新消息今天/怎样优化网站关键词排名靠前
  • 门户类网站建立有哪些构成/百度广告联盟app
  • 电商网站推荐/免费的企业黄页网站
  • 推荐网站建设的书/百度营销网页版
  • html5 图片展示网站/重庆百度搜索优化
  • 如何用群晖做自己的网站/信息流优化师前景
  • 网站报价表怎么做/网站软件下载
  • 志愿者协会网站建设/北京网站优化排名推广
  • 网站正在建设中英文表述/seo优化 搜 盈seo公司
  • 如何去注册一个公司/优化网站排名的方法
  • 承德企业网站建设/seo整体优化步骤怎么写
  • 海外免备案网站/自己做网站如何赚钱
  • 邹城网站建设哪家便宜/百度 营销中心
  • 青岛建设教育网站/哪有免费的网站
  • 网站管理系统模板/接外包网站
  • 新余哪有做网站的公司/一份完整的市场调查方案
  • 韩国做暖暖网站/网络媒体推广报价
  • 学校网络建设情况说明/seo详细教程
  • 做网站需要哪几个板块/百度关键词竞价价格
  • 网站推广自己可以做吗/打广告去哪个平台
  • 局域网建设网站如何访问/站点搜索
  • 蚌埠专业制作网站的公司/百度关键词搜索次数