Gibt es eine schnelle (und schön aussehende) Möglichkeit, ein Element aus einem Array in Java zu entfernen?
Sie können ein Element nicht aus einem Java-Array entfernen. Werfen Sie stattdessen einen Blick auf verschiedene Collections und ArrayList.
Eine gut aussehende Lösung wäre die Verwendung einer Liste anstelle eines Arrays.
List.remove(index)
Wenn Sie Arrays verwenden müssen, sind zwei Aufrufe von System.arraycopy
höchstwahrscheinlich die schnellste Lösung.
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);
}
(Arrays.asList
ist auch ein guter Kandidat für die Arbeit mit Arrays, aber es scheint remove
nicht zu unterstützen).