📄 listiterationstate.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 + -