⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 listiterationstate.java

📁 java 的源代码
💻 JAVA
字号:
package com.reddragon2046.base.utilities.data.collections;

import java.util.*;

// Referenced classes of package com.reddragon2046.base.utilities.data.collections:
//            AbstractIterationState, IListIterationState

class ListIterationState extends AbstractIterationState
    implements IListIterationState
{

    public static ListIterationState createStart(List list)
    {
        return new ListIterationState(list, list.listIterator(), 0);
    }

    public static ListIterationState createFinish(List list)
    {
        return new ListIterationState(list, list.listIterator(list.size()), list.size());
    }

    public static ListIterationState createWithIndex(List list, int index)
    {
        return new ListIterationState(list, list.listIterator(index), index);
    }

    private ListIterationState(List list, ListIterator iterator, int index)
    {
        super(list, iterator, index);
        m_list = list;
        m_iterator = iterator;
    }

    protected ListIterationState(ListIterationState other)
    {
        super(other);
        m_list = other.m_list;
        int index = other.getIndex();
        int dir = other.getLastDirection();
        m_iterator = m_list.listIterator(index - dir);
        if(dir > 0)
            m_iterator.next();
        else
        if(dir < 0)
            m_iterator.previous();
    }

    public Object clone()
    {
        return new ListIterationState(this);
    }

    public String toString()
    {
        return "{ " + m_list + ", " + super.toString() + " }";
    }

    public Collection getCollection()
    {
        return m_list;
    }

    public Iterator getIterator()
    {
        return m_iterator;
    }

    public ListIterator getListIterator()
    {
        return m_iterator;
    }

    public List getList()
    {
        return m_list;
    }

    public Object getObject()
    {
        int index = getIndex();
        if(index < 0 || index > m_list.size() - 1)
            return null;
        else
            return m_list.get(index);
    }

    private List m_list;
    private ListIterator m_iterator;
}

⌨️ 快捷键说明

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