/** * {@inheritDoc} */ @Override public int indexOf(KType e1) { for (int i = 0; i < elementsCount; i++) { if (this.equals(buffer[i], e1)) { return i; } } return -1; }
/** * {@inheritDoc} */ @Override public int lastIndexOf(KType e1) { for (int i = elementsCount - 1; i >= 0; i--) { if (this.equals(buffer[i], e1)) { return i; } } return -1; }
/** * {@inheritDoc} */ @Override public int removeAll(KType e1) { int to = 0; for (int from = 0; from < elementsCount; from++) { if (this.equals(buffer[from], e1)) { buffer[from] = null; continue; } if (to != from) { buffer[to] = buffer[from]; buffer[from] = null; } to++; } final int deleted = elementsCount - to; this.elementsCount = to; return deleted; }
/** * Compare index-aligned elements against another * {@link ObjectIndexedContainer}. * Equality comparison is performed with this object's {@link #equals(Object, Object)} * method. */ protected boolean equalElements(ObjectArrayList<?> other) { int max = size(); if (other.size() != max) { return false; } for (int i = 0; i < max; i++) { if (!this.equals(other.get(i), get(i))) { return false; } } return true; }
/** * {@inheritDoc} */ @Override public int indexOf(KType e1) { for (int i = 0; i < elementsCount; i++) { if (this.equals(buffer[i], e1)) { return i; } } return -1; }
/** * {@inheritDoc} */ @Override public int lastIndexOf(KType e1) { for (int i = elementsCount - 1; i >= 0; i--) { if (this.equals(buffer[i], e1)) { return i; } } return -1; }
/** * {@inheritDoc} */ @Override public int removeAll(KType e1) { int to = 0; for (int from = 0; from < elementsCount; from++) { if (this.equals(buffer[from], e1)) { buffer[from] = null; continue; } if (to != from) { buffer[to] = buffer[from]; buffer[from] = null; } to++; } final int deleted = elementsCount - to; this.elementsCount = to; return deleted; }
/** * Compare index-aligned elements against another * {@link ObjectIndexedContainer}. * Equality comparison is performed with this object's {@link #equals(Object, Object)} * method. */ protected boolean equalElements(ObjectArrayList<?> other) { int max = size(); if (other.size() != max) { return false; } for (int i = 0; i < max; i++) { if (!this.equals(other.get(i), get(i))) { return false; } } return true; }