Existe alguma maneira rápida (e bonita) de remover um elemento de um array em Java?
Uma boa solução seria usar uma Lista em vez de um array em primeiro lugar.
List.remove(index)
Se você tenha para utilizar arrays, duas chamadas para System.arraycopy
serão provavelmente as mais rápidas.
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
também é um bom candidato para trabalhar com arrays, mas não'não parece suportar 'remove').