自定义数组迭代器

/**
 * dinner 数组迭代器
 * 
 * @author Administrator
 *
 */
public class DinnerMenuIterator implements Iterator {

	private MenuItem[] menuItems;

	private Integer position = 0;

	public DinnerMenuIterator(MenuItem[] menuItems) {
		this.menuItems = menuItems;
	}

	@Override
	public boolean hasNext() {
		if (position >= menuItems.length || menuItems[position] == null) {
			return false;
		} else {
			return true;
		}
	}

	@Override
	public Object next() {
		MenuItem menuItem = menuItems[position];
		position += 1;
		return menuItem;
	}

	@Override
	public void remove() {
		position -= 1;
		for (int i = position; i < menuItems.length - 1; i++) {
			menuItems[i] = menuItems[i + 1];
		}
		menuItems[menuItems.length - 1] = null;
	}

}

阅读更多
文章标签: 迭代器 集合遍历
个人分类: Java基础
上一篇MySQL常用函数
下一篇安装Fiddler后浏览器请求被拦截无法上网问题
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭
关闭