Odstranjevanje elementa iz polja (Java)

Ali obstaja kakšen hiter (in lep videz) način za odstranitev elementa iz polja v Javi?

Iz osnovnega polja Java ne morete odstraniti elementa. Namesto tega si oglejte različne zbirke (Collections) in množice (ArrayList).

Komentarji (8)

Lepa rešitev bi bila, če bi namesto polja najprej uporabili seznam.

List.remove(index)

Če morate uporabiti polja, bosta najverjetneje najhitrejša dva klica na System.arraycopy.

Foo[] result = new Foo[source.length - 1];
System.arraycopy(source, 0, result, 0, index);
if (source.length != index) {
    System.arraycopy(source, index + 1, result, index, source.length - index - 1);
}

(Tudi Arrays.asList je dober kandidat za delo z matrikami, vendar se zdi, da ne podpira remove.)

Komentarji (1)

Seveda, ustvarite še eno polje :)

Komentarji (0)