这篇“Java中的aslist怎么使用”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Java中的aslist怎么使用”文章吧。
作用
1、是返回由指定数组支持的固定尺寸列表。
2、此方法返回的ArrayList并非我们常用的集合类java.util.ArrayList。ArrayList是Arrays的内部类java.util.Arrays.ArrayList。
实例
private static class ArrayList<E> extends AbstractList<E>
implements RandomAccess, java.io.Serializable
{
private static final long serialVersionUID = -2764017481108945198L;
private final E[] a;
ArrayListE[] array) {
a = Objects.requireNonNullarray);
}
@Override
public int size) {
return a.length;
}
@Override
public Object[] toArray) {
return a.clone);
}
@Override
@SuppressWarnings"unchecked")
public <T> T[] toArrayT[] a) {
int size = size);
if a.length < size)
return Arrays.copyOfthis.a, size,
Class<? extends T[]>) a.getClass));
System.arraycopythis.a, 0, a, 0, size);
if a.length > size)
a[size] = null;
return a;
}
@Override
public E getint index) {
return a[index];
}
@Override
public E setint index, E element) {
E oldValue = a[index];
a[index] = element;
return oldValue;
}
@Override
public int indexOfObject o) {
E[] a = this.a;
if o == null) {
for int i = 0; i < a.length; i++)
if a[i] == null)
return i;
} else {
for int i = 0; i < a.length; i++)
if o.equalsa[i]))
return i;
}
return -1;
}
@Override
public boolean containsObject o) {
return indexOfo) != -1;
}
@Override
public Spliterator<E> spliterator) {
return Spliterators.spliteratora, Spliterator.ORDERED);
}
@Override
public void forEachConsumer<? super E> action) {
Objects.requireNonNullaction);
for E e : a) {
action.accepte);
}
}
@Override
public void replaceAllUnaryOperator<E> operator) {
Objects.requireNonNulloperator);
E[] a = this.a;
for int i = 0; i < a.length; i++) {
a[i] = operator.applya[i]);
}
}
@Override
public void sortComparator<? super E> c) {
Arrays.sorta, c);
}
}
