design_model(13)Iterator

1.Iterative mode

Provides a way to access elements in an aggregated object sequentially without exposing the internal representation of the object.

2.Example

public interface Iterator {
	public Boolean hashNext();

	public Integer next();
}

public class IteratorImp {
	private ArrayList<Integer> list;

	public IteratorImp(ArrayList<Integer> list) {
		super();
		this.list = list;
	}

	public MyIterator iterator() {
		return new MyIterator();
	}

	class MyIterator implements Iterator {
		private int size = list.size();
		private int i = 0;

		@Override
		public Boolean hashNext() {
			if (i < size) {
				return true;
			}
			return false;
		}

		@Override
		public Integer next() {
			if (i < size) {
				i++;
			}
			return list.get(i - 1);
		}

	}
}

 

Leave a Reply

Your email address will not be published. Required fields are marked *