Supongamos que inserto 5 cadenas en un ArrayList
. ¿El orden de inserción y recuperación del ArrayList
mismo será el mismo?
Supongamos que inserto 5 cadenas en un ArrayList
. ¿El orden de inserción y recuperación del ArrayList
mismo será el mismo?
Respuestas:
Verifique el código a continuación y ejecútelo:
public class ListExample {
public static void main(String[] args) {
List<String> myList = new ArrayList<String>();
myList.add("one");
myList.add("two");
myList.add("three");
myList.add("four");
myList.add("five");
System.out.println("Inserted in 'order': ");
printList(myList);
System.out.println("\n");
System.out.println("Inserted out of 'order': ");
// Clear the list
myList.clear();
myList.add("four");
myList.add("five");
myList.add("one");
myList.add("two");
myList.add("three");
printList(myList);
}
private static void printList(List<String> myList) {
for (String string : myList) {
System.out.println(string);
}
}
}
Produce la siguiente salida:
Inserted in 'order':
one
two
three
four
five
Inserted out of 'order':
four
five
one
two
three
Para obtener información detallada, consulte la documentación: List (Java Platform SE7)
Sí . ArrayList es una lista secuencial . Entonces, el orden de inserción y recuperación es el mismo.
Si agrega elementos durante la recuperación , el orden no seguirá siendo el mismo.
Si siempre agrega al final, entonces cada elemento se agregará al final y permanecerá así hasta que lo cambie.
Si siempre inserta al principio, cada elemento aparecerá en el orden inverso al que los agregó.
Si los inserta en el medio, el orden será diferente.
Sí, siempre será igual. De la documentación
Agrega el elemento especificado al final de esta lista. Parámetros: e elemento que se agregará a esta lista Devuelve: verdadero (según lo especificado por Collection.add (java.lang.Object))
add()
Implementación de ArrayList
public boolean More ...add(E e) {
ensureCapacity(size + 1); // Increments modCount!!
elementData[size++] = e;
return true;
}
Sí, sigue siendo el mismo. pero ¿por qué no probarlo fácilmente? ¡Haga una ArrayList, rellénela y luego recupere los elementos!