添加注释

master
星期八 4 years ago
parent cce90f684b
commit 3d7918ffc6
  1. 2
      pattern-iterator/README.md
  2. 6
      pattern-iterator/src/main/java/org/panda/iterator/Aggregate.java
  3. 8
      pattern-iterator/src/main/java/org/panda/iterator/Book.java
  4. 12
      pattern-iterator/src/main/java/org/panda/iterator/BookShelf.java
  5. 21
      pattern-iterator/src/main/java/org/panda/iterator/BookShelfIterator.java
  6. 14
      pattern-iterator/src/main/java/org/panda/iterator/Iterator.java

@ -7,6 +7,4 @@
1. 将遍历和实现分开,降低耦合
2. 遍历iterator,可扩展。比如可以实现顺序遍历,又可以另外实现倒序遍历。这样的修改对实现改动小
3. 实现的修改,对遍历影响小.
```

@ -2,8 +2,12 @@ package org.panda.iterator;
/**
* 集合类接口
* @author qi
*/
public interface Aggregate {
/**
* 获取迭代器
* @return
*/
Iterator iterator();
}

@ -1,7 +1,13 @@
package org.panda.iterator;
/**
* 书籍
* @author qi
*/
public class Book {
/**
* 书名称
*/
private String name;
public Book() {

@ -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<Book> bookList;
/**
* 集合索引
*/
private int last = 0;
public BookShelf(){

@ -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<bookShelf.getLength()){
return true;
}else {
return false;
}
return index<bookShelf.getLength();
}
@Override
public Object next() {
Book book = bookShelf.get(index);
index++;
return book;
}
}

@ -1,8 +1,20 @@
package org.panda.iterator;
/**
* 接口-迭代器
* @author qi
* @param <T>
*/
public interface Iterator<T> {
/**
* 判断是否有下一元素
* @return
*/
boolean hashNext();
/**
* 获取元素
* @return
*/
T next();
}

Loading…
Cancel
Save