public classArrayList<E> {
transient Object[] elementData; // non-private to simplify nested classaccess@SuppressWarnings("unchecked")
E elementData(int index) {
return (E) elementData[index];
}
}
2. contains
同理可知 indexOf、lastIndexOf 的实现;
publicbooleancontains(Object o) {
return indexOf(o) >= 0;
}
publicintindexOf(Object o) {
if (o == null) {
for (int i = 0; i < size; i++)
if (elementData[i]==null)
return i;
} else {
for (int i = 0; i < size; i++)
if (o.equals(elementData[i]))
return i;
}
return -1;
}