Supongamos que inserto 5 cadenas en un ArrayList
. ¿El orden de inserción y recuperación del ArrayList
será el mismo?Orden de inserción y recuperación de ArrayList
Respuesta
Compruebe el código de abajo y ejecutarlo:
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 el siguiente resultado:
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)
Gracias. El fragmento de código lo explica claramente cuando se ejecuta. – divinedragon
+1 por incluir un enlace al documento de Java que explica claramente el orden. –
Muestra de salida sería útil – nilesh
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, la orden no será la misma.
Si siempre agrega al final, 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 las inserta en el medio, el orden será otra cosa.
Sí, sigue siendo el mismo. , pero ¿por qué no probarlo fácilmente? Haz una ArrayList, llénala y luego recupera los elementos.
Sin embargo, eso no es una prueba. – YoTengoUnLCD
El mismo orden es solo uno de los posibles resultados de la prueba. Si la implementación es blackbox, el mismo orden podría ser un caso específico. Ejemplo es lista ordenada. Si agrega elementos a la lista ordenada en el orden correcto, puede obtenerlos en orden ordenado (que es solo un caso particular), pero si los agrega en orden aleatorio, los ordena. Al probar ArrayList sin verificar la implementación solo se indicará "la orden más probable es la misma". – simar
Sí, siempre lo hará ser el mismo. Del documentation
Añade el elemento especificado al final de esta lista. Parámetros: e elementos que se añadirán a esta lista Devuelve: verdadero (según lo especificado por Collection.add (java.lang.Object))
ArrayList add()
aplicación
public boolean More ...add(E e) {
ensureCapacity(size + 1); // Increments modCount!!
elementData[size++] = e;
return true;
}
- 1. Orden de recuperación de la lista de matrices
- 2. recuperación de datos de un ArrayList de objetos VB.NET
- 3. LinkedHashSet o ArrayList
- 4. Infraestructura de entidad de orden de inserción de fila
- 5. Inserción en Oracle y la recuperación de la secuencia generada ID
- 6. Establecer el orden de inserción de preservación de la colección
- 7. ¿El orden de un arraylist está garantizado en C# .NET?
- 8. Implementación de la utilización de orden de inserción java.util.Map como orden
- 9. Uso de ArrayList o HashMap
- 10. ¿Cómo se conserva el orden de inserción en HashMap?
- 11. Cómo está Hibernate decidiendo el orden de actualización/inserción/eliminación
- 12. ¿Cómo iterar sobre Multimap en el orden de inserción?
- 13. usando boost multi_index_container para conservar la orden de inserción
- 14. Ruby mantener el orden de inserción del hash
- 15. ¿El conjunto en Ruby siempre conserva el orden de inserción?
- 16. Colecciones Java que mantienen el orden de inserción
- 17. ¿Hash iterativo basado en el orden de inserción?
- 18. un C++ mapa hash que preserve el orden de inserción
- 19. Scala Group¿Para conservar el orden de inserción?
- 20. elemento Insertar para arrayList con orden ascendente y no hay elementos duplicados
- 21. duración y tiempo de recuperación de mysql
- 22. ¿Clase de Java que implementa Mapa y mantiene el orden de inserción?
- 23. Inserción de una fila y la recuperación de la identidad de la nueva fila en SQL Server CE
- 24. ArrayList Eficiencia y tamaño
- 25. Silverlight y ArrayList
- 26. manifiesto de caché HTML5 y recuperación previa
- 27. Restando un arrayList de otro arrayList
- 28. Java convertir ArrayList en cadena y volver a ArrayList?
- 29. Mapas (colección) que mantienen la inserción Orden en java
- 30. ArrayList en Java y entrada
¿Por qué no pruébalo y averígualo? –
Una cosa es probarlo una vez. Otra cosa es estar seguro de que siempre va a ser igual. – Suragch