@NotNull @Contract(pure=true) public static <T> T[] remove(@NotNull final T[] src, T element, @NotNull ArrayFactory<T> factory) { final int idx = find(src, element); if (idx == -1) return src; return remove(src, idx, factory); }
@NotNull @Contract(pure=true) public static <T> T[] remove(@NotNull final T[] src, T element) { final int idx = find(src, element); if (idx == -1) return src; return remove(src, idx); }