📄 chararray.java
字号:
package com.reddragon2046.base.utilities.data.adapters;
import com.reddragon2046.base.utilities.data.BidirectionalIterator;
import java.util.Iterator;
// Referenced classes of package com.reddragon2046.base.utilities.data.adapters:
// AbstractNativeArray, CharBuffer, CharIterator, Algorithms
public class CharArray extends AbstractNativeArray
{
public CharArray()
{
this(new char[0]);
}
public CharArray(CharArray array)
{
this(array.array);
}
public CharArray(CharBuffer buffer)
{
this(buffer.get());
}
public CharArray(char array[])
{
this.array = array;
}
public synchronized Object clone()
{
return new CharArray(this);
}
public synchronized String toString()
{
return Algorithms.Printing.toString(this, "char[]");
}
public boolean equals(Object object)
{
return (object instanceof CharArray) && equals((CharArray)object) || (object instanceof CharBuffer) && equals((CharBuffer)object);
}
public boolean equals(CharArray object)
{
return equals(object.array);
}
public synchronized boolean equals(CharBuffer buffer)
{
boolean flag;
synchronized(buffer)
{
flag = sliceEquals(array, array.length, buffer.m_storage, buffer.m_length);
}
return flag;
}
public synchronized boolean equals(char array[])
{
boolean flag;
synchronized(array)
{
flag = sliceEquals(this.array, this.array.length, array, array.length);
}
return flag;
}
protected static boolean sliceEquals(char a1[], int len1, char a2[], int len2)
{
if(len1 != len2)
return false;
for(int i = 0; i < len1; i++)
if(a1[i] != a2[i])
return false;
return true;
}
public char[] get()
{
return array;
}
public int size()
{
return array.length;
}
public int maxSize()
{
return array.length;
}
public Iterator iterator()
{
return begin();
}
public synchronized BidirectionalIterator begin()
{
return new CharIterator(this, 0);
}
public synchronized BidirectionalIterator end()
{
return new CharIterator(this, array.length);
}
public Object get(int index)
{
return new Character(charAt(index));
}
public synchronized char charAt(int index)
{
return array[index];
}
public void put(int index, Object object)
{
put(index, ((Character)object).charValue());
}
public synchronized void put(int index, char object)
{
array[index] = object;
}
char array[];
static final long serialVersionUID = 0x9215dd5f483ee9b2L;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -