¿Cuál es el costo de utilizar Arrays.asList para convertir matrices de objetos estáticos? Suponiendo que la matriz de objetos tiene N elementos, ¿es solo un algoritmo O (N), donde todos los elementos se copian por referencia o es simplemente una fachada donde la matriz original se coloca detrás de una fachada de Lista?Rendimiento de Arrays.asList
Respuesta
Es barato, O (1). Como sospecha, la lista es simplemente una envoltura alrededor de la matriz. Esto es confirmado por Java API documentation:
Devuelve una lista de tamaño fijo respaldada por la matriz especificada. (Cambia a la lista devuelta "escribir" en la matriz.)
Al ir en la otra dirección (Collection.toArray), la matriz no es "write-through". Los cambios en la matriz no afectarán a la lista de la que proviene la matriz. –
En otras palabras sam, clona la matriz original. – monksy
- 1. Arrays.asList() ¿duda?
- 2. Arrays.asList (...) en .Net
- 3. ¿Cómo funciona Arrays.asList (...). Contiene (...) funciona?
- 4. Lista de inicialización <> con Arrays.asList
- 5. remove() en la lista creada por Arrays.asList() throws UnsupportedOperationException
- 6. ¿Por qué Arrays.asList() devuelve su propia implementación ArrayList?
- 7. Rendimiento de rendimiento en Java
- 8. Rendimiento de rendimiento del rendimiento: en Smalltalk (específicamente Squeak)
- 9. rendimiento rendimiento muchos?
- 10. Rendimiento de rendimiento dentro de los usos
- 11. patrón de trabajo de rendimiento rendimiento
- 12. ¿Qué tipo de hormigón devuelve 'rendimiento rendimiento'?
- 13. rendimiento de rendimiento anidado con IEnumerable
- 14. Event Store 3.0 - Rendimiento/rendimiento
- 15. Uso sobrecargado del rendimiento rendimiento
- 16. rendimiento de ejecución (retorno de rendimiento) usando Scala continuaciones
- 17. ¿Reescribir este rendimiento de foreach a un rendimiento de linq?
- 18. Rendimiento del rendimiento anidado en un árbol
- 19. Rendimiento de wkhtmltopdf
- 20. Rendimiento de dynamic_cast?
- 21. CSS Sprites de rendimiento
- 22. Rendimiento de multimétodos
- 23. Rendimiento absoluto de posicionamiento
- 24. rendimiento varargs de Java
- 25. scala - sintaxis de rendimiento
- 26. Anomalía de rendimiento Runhaskell
- 27. Comportamiento de rendimiento extraño
- 28. Rendimiento de DataInputStream \ DataOutputStream
- 29. Rendimiento de Object.GetType()
- 30. FindByIdentity - diferencias de rendimiento
Podría echar un vistazo a las fuentes :) – vava
No siempre se puede ver el código ... alguna vez el código se redirige y se oculta de vista. Sin embargo, no estoy usando OpenJava. – monksy
Bueno, las fuentes de la biblioteca Java a diferencia de .Net one se distribuyen junto con jdk. Hay src.zip justo debajo de "C: \ Archivos de programa \ Java \ jdk1.6.0_11" – vava