[leetCode刷题笔记]284. Peeking Iterator

来源:互联网 发布:移动软件开发定义 编辑:程序博客网 时间:2024/06/05 20:38
// Java Iterator interface reference:// https://docs.oracle.com/javase/8/docs/api/java/util/Iterator.htmlclass PeekingIterator implements Iterator<Integer> {    private Iterator<Integer> ite;    private Integer val;public PeekingIterator(Iterator<Integer> iterator) {    // initialize any member here.    ite = iterator;    if (ite.hasNext()) val = ite.next();     }    // Returns the next element in the iteration without advancing the iterator.public Integer peek() {        return val;}// hasNext() and next() should behave the same as in the Iterator interface.// Override them if needed.@Overridepublic Integer next() {    Integer res = val;    if (ite.hasNext()) val = ite.next();    else val = null;    return res;}@Overridepublic boolean hasNext() {    return val != null;}}

0 0