forwarditeratorbasedseries.java

来自「java 的源代码」· Java 代码 · 共 72 行

JAVA
72
字号
package com.reddragon2046.base.utilities.data;


// Referenced classes of package com.reddragon2046.base.utilities.data:
//            AbstractSequence, ForwardIterator, InputIterator, ModifiableSeries

class ForwardIteratorBasedSeries extends AbstractSequence
    implements ModifiableSeries
{

    public ForwardIteratorBasedSeries(ForwardIterator start, ForwardIterator finish)
    {
        if(!start.isCompatibleWith(finish))
        {
            throw new IllegalArgumentException("start and finish iterators are incompatible");
        } else
        {
            m_start = start;
            m_finish = finish;
            return;
        }
    }

    public ForwardIterator start()
    {
        return startForward();
    }

    public ForwardIterator finish()
    {
        return finishForward();
    }

    public int size()
    {
        return m_start.distance(m_finish);
    }

    public Object clone()
    {
        return new ForwardIteratorBasedSeries((ForwardIterator)m_start.clone(), (ForwardIterator)m_finish.clone());
    }

    public Object get(int index)
    {
        return m_start.get(index);
    }

    public InputIterator startInput()
    {
        return (InputIterator)m_start.clone();
    }

    public InputIterator finishInput()
    {
        return (InputIterator)m_finish.clone();
    }

    public ForwardIterator startForward()
    {
        return (ForwardIterator)m_start.clone();
    }

    public ForwardIterator finishForward()
    {
        return (ForwardIterator)m_finish.clone();
    }

    private ForwardIterator m_start;
    private ForwardIterator m_finish;
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?