📄 abstractarrayadapter.java
字号:
package com.reddragon2046.base.utilities.data.adapters;
import com.reddragon2046.base.utilities.data.*;
import java.util.*;
// Referenced classes of package com.reddragon2046.base.utilities.data.adapters:
// ArrayAdapter, Algorithms
public abstract class AbstractArrayAdapter extends AbstractSequence
implements ArrayAdapter
{
public AbstractArrayAdapter()
{
}
public Object clone()
{
return null;
}
public boolean equals(Object object)
{
return false;
}
public synchronized int hashCode()
{
return Algorithms.Hashing.orderedHash(start(), size());
}
public int count(Object object)
{
return count(0, size() - 1, object);
}
public synchronized int count(int first, int last, Object object)
{
int count = 0;
for(int i = first; i <= last; i++)
if(get(i).equals(object))
count++;
return count;
}
public int replace(Object oldValue, Object newValue)
{
return replace(0, size() - 1, oldValue, newValue);
}
public synchronized int replace(int first, int last, Object oldValue, Object newValue)
{
int count = 0;
for(int i = first; i <= last; i++)
if(get(i).equals(oldValue))
{
put(i, newValue);
count++;
}
return count;
}
public boolean contains(Object object)
{
return indexOf(object) != -1;
}
public int indexOf(Object object)
{
return indexOf(0, size() - 1, object);
}
public synchronized int indexOf(int first, int last, Object object)
{
for(int i = first; i <= last; i++)
if(get(i).equals(object))
return i;
return -1;
}
public int maxSize()
{
return 0x7fffffff;
}
protected static final void checkIndex(int i, int size)
{
if(i < 0 || i >= size)
throw new IndexOutOfBoundsException("Attempt to access m_index " + i + "; valid range is 0.." + (size - 1));
else
return;
}
protected static final void checkRange(int lo, int hi, int size)
{
checkIndex(lo, size);
checkIndex(hi, size);
}
static final int getNextSize(int cursize)
{
int newSize = cursize <= 2000 ? cursize * 2 : cursize + 2000;
return Math.max(1, newSize);
}
public synchronized Iterator iterator()
{
return begin();
}
public ForwardIterator start()
{
return begin();
}
public ForwardIterator finish()
{
return end();
}
public Object set(int index, Object obj)
{
Object original = get(index);
put(index, obj);
return original;
}
public abstract BidirectionalIterator end();
public abstract BidirectionalIterator begin();
static final int DEFAULT_SIZE = 10;
static final int THRESHOLD = 2000;
static final int MULTIPLIER = 2;
static final long serialVersionUID = 0x550b11676623ac25L;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -