¿ArrayList reemplazar elemento si existe en un índice dado?

82

¿Cómo reemplazar el elemento si existe en una ArrayList en un índice dado?

Harinder
fuente

Respuestas:

179
  arrayList.set(index i,String replaceElement);
dev4u
fuente
3
aquí la pregunta en sí es: "reemplazar elemento si sale", pero para evitar errores, se requiere verificación nula
dev4u
¿Hay alguna forma sin índice de paso en él?
Arpit Patel
@ArpitPatel arrayList.add () se puede usar para agregar un nuevo elemento. No puede especificar en qué lugar de la lista de matrices desea agregar algo sin un índice.
Alan
5

Si va a necesitar un conjunto de funciones diferente, le aconsejo que amplíe ArrayList con su propia clase. De esta manera, no tendrá que definir su comportamiento en más de un lugar.

// You can come up with a more appropriate name
public class SizeGenerousArrayList<E> extends java.util.ArrayList<E> {

    @Override
    public E set(int index, E element) {
        this.ensureCapacity(index+1); // make sure we have room to set at index
        return super.set(index,element); // now go as normal
    }

    // all other methods aren't defined, so they use ArrayList's version by default

}
corsiKa
fuente
2

Un elemento se sobrescribe si ya existe en un índice, ese es el comportamiento predeterminado: Javadoc .

¿O me estoy perdiendo tu punto por completo?

user183037
fuente
0

Simplemente agregue un descanso después de su declaración remove ()

Sebastián Altamirano
fuente
Por favor, ¿puede proporcionar una respuesta completa? Gracias
Prags
0

solo usa este método dentro de lista de matrices

list.set(/*index*/,/*value*/)
yousef
fuente