From 3d7918ffc6d21a8e810630417dfd9226b90c7a73 Mon Sep 17 00:00:00 2001 From: qi Date: Fri, 15 May 2020 14:34:57 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E6=B3=A8=E9=87=8A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pattern-iterator/README.md | 2 -- .../java/org/panda/iterator/Aggregate.java | 6 +++++- .../main/java/org/panda/iterator/Book.java | 8 ++++++- .../java/org/panda/iterator/BookShelf.java | 12 +++++++++-- .../org/panda/iterator/BookShelfIterator.java | 21 ++++++++++++------- .../java/org/panda/iterator/Iterator.java | 14 ++++++++++++- 6 files changed, 49 insertions(+), 14 deletions(-) diff --git a/pattern-iterator/README.md b/pattern-iterator/README.md index 80cff09..9c08b0f 100644 --- a/pattern-iterator/README.md +++ b/pattern-iterator/README.md @@ -7,6 +7,4 @@ 1. 将遍历和实现分开,降低耦合 2. 遍历iterator,可扩展。比如可以实现顺序遍历,又可以另外实现倒序遍历。这样的修改对实现改动小 3. 实现的修改,对遍历影响小. - - ``` diff --git a/pattern-iterator/src/main/java/org/panda/iterator/Aggregate.java b/pattern-iterator/src/main/java/org/panda/iterator/Aggregate.java index c7281e7..fa16dba 100755 --- a/pattern-iterator/src/main/java/org/panda/iterator/Aggregate.java +++ b/pattern-iterator/src/main/java/org/panda/iterator/Aggregate.java @@ -2,8 +2,12 @@ package org.panda.iterator; /** * 集合类接口 + * @author qi */ public interface Aggregate { - + /** + * 获取迭代器 + * @return + */ Iterator iterator(); } diff --git a/pattern-iterator/src/main/java/org/panda/iterator/Book.java b/pattern-iterator/src/main/java/org/panda/iterator/Book.java index 83f8c8a..959af1e 100755 --- a/pattern-iterator/src/main/java/org/panda/iterator/Book.java +++ b/pattern-iterator/src/main/java/org/panda/iterator/Book.java @@ -1,7 +1,13 @@ package org.panda.iterator; +/** + * 书籍 + * @author qi + */ public class Book { - + /** + * 书名称 + */ private String name; public Book() { diff --git a/pattern-iterator/src/main/java/org/panda/iterator/BookShelf.java b/pattern-iterator/src/main/java/org/panda/iterator/BookShelf.java index 8447630..b274508 100755 --- a/pattern-iterator/src/main/java/org/panda/iterator/BookShelf.java +++ b/pattern-iterator/src/main/java/org/panda/iterator/BookShelf.java @@ -3,10 +3,18 @@ package org.panda.iterator; import java.util.ArrayList; import java.util.List; +/** + * 书的集合类-书架 + * @author qi + */ public class BookShelf implements Aggregate { - + /** + * 书籍集合 + */ private List bookList; - + /** + * 集合索引 + */ private int last = 0; public BookShelf(){ diff --git a/pattern-iterator/src/main/java/org/panda/iterator/BookShelfIterator.java b/pattern-iterator/src/main/java/org/panda/iterator/BookShelfIterator.java index 01d6d65..66270ec 100755 --- a/pattern-iterator/src/main/java/org/panda/iterator/BookShelfIterator.java +++ b/pattern-iterator/src/main/java/org/panda/iterator/BookShelfIterator.java @@ -1,9 +1,17 @@ package org.panda.iterator; +/** + * 书架迭代器 + * @author qi + */ public class BookShelfIterator implements Iterator { - + /** + * 书架 + */ private BookShelf bookShelf; - + /** + * 索引 + */ private int index; public BookShelfIterator(BookShelf bookShelf) { @@ -11,18 +19,17 @@ public class BookShelfIterator implements Iterator { this.index = 0; } + @Override public boolean hashNext() { - if (index + */ public interface Iterator { - + /** + * 判断是否有下一元素 + * @return + */ boolean hashNext(); + /** + * 获取元素 + * @return + */ T next(); }