@Override public Vector<T> removeFirst(Predicate<T> predicate) { Objects.requireNonNull(predicate, "predicate is null"); for (int i = 0; i < length(); i++) { if (predicate.test(get(i))) { return removeAt(i); } } return this; }
@Override public Vector<T> removeLast(Predicate<T> predicate) { Objects.requireNonNull(predicate, "predicate is null"); for (int i = length() - 1; i >= 0; i--) { if (predicate.test(get(i))) { return removeAt(i); } } return this; }
@Override public Vector<T> remove(T element) { for (int i = 0; i < length(); i++) { if (Objects.equals(get(i), element)) { return removeAt(i); } } return this; }
@Override public Vector<T> removeLast(Predicate<T> predicate) { Objects.requireNonNull(predicate, "predicate is null"); for (int i = length() - 1; i >= 0; i--) { if (predicate.test(get(i))) { return removeAt(i); } } return this; }
@Override public Vector<T> removeFirst(Predicate<T> predicate) { Objects.requireNonNull(predicate, "predicate is null"); for (int i = 0; i < length(); i++) { if (predicate.test(get(i))) { return removeAt(i); } } return this; }
@Override public Vector<T> remove(T element) { for (int i = 0; i < length(); i++) { if (Objects.equals(get(i), element)) { return removeAt(i); } } return this; }
/** * Attempts to remove an existing item at the specified index. * * @param index The index to remove the item at. * @return Returns a Success with the new modified DataColumn, or a Failure. */ @Override public Try<IDataColumn> remove(Integer index) { return Try.of(() -> createColumn(this.data.removeAt(index))); }
/** * Removes the item at the specified index. * * @param index The index to remove the item at. * @return Returns a new DataColumn with the specified item removed. */ public Try<DataColumn<T>> removeItem(Integer index) { return Try.of(() -> createColumn(this.data.removeAt(index))); }
/** * Removes an item from the vector, with additional bounds check. * * @param vector The vector to remove the item from. * @param index The index to remove the item at. * @param <T> The vector type. * @return Returns the new vector with the item removed. */ public static <T> Try<Vector<T>> removeItem(Vector<T> vector, Integer index) { return outOfBounds(vector, index) ? error("Item index out of bounds for remove.") : Try.success(vector.removeAt(index)); }