Java | Leetcode Java题解之第284题窥视迭代器

题目:

题解:

java 复制代码
class PeekingIterator<E> implements Iterator<E> {
    private Iterator<E> iterator;
    private E nextElement;

    public PeekingIterator(Iterator<E> iterator) {
        this.iterator = iterator;
        nextElement = iterator.next();
    }
    
    public E peek() {
        return nextElement;
    }
    
    @Override
    public E next() {
        E ret = nextElement;
        nextElement = iterator.hasNext() ? iterator.next() : null;
        return ret;
    }
    
    @Override
    public boolean hasNext() {
        return nextElement != null;
    }
}
相关推荐
麻芝汤圆7 分钟前
在 IDEA 中写 Spark 程序:从入门到实践
java·大数据·hadoop·分布式·安全·spark·intellij-idea
LUCIAZZZ28 分钟前
分布式链路追踪理论
java·分布式·中间件·操作系统·链路追踪
未来的JAVA高级开发工程师29 分钟前
悲观锁与乐观锁
java·数据库
weixin_4405974530 分钟前
Spring Boot 中的条件注解
java·spring boot·后端
风象南1 小时前
SpringBoot中6种拦截器使用场景
java·spring boot·后端
Y1nhl1 小时前
力扣hot100_普通数组_python版本
开发语言·python·算法·leetcode·职场和发展
梦之马2 小时前
spring boot 2升级3 记录
java·spring boot·后端
yuren_xia3 小时前
Spring MVC中自定义日期类型格式转换器
java·spring·mvc
GottdesKrieges4 小时前
OceanBase数据库磁盘空间管理
java·数据库·oceanbase
Themberfue5 小时前
Redis ⑦-set | Zset
java·开发语言·数据库·redis·sql·缓存