java - ejemplo - ¿Cuál es la mejor manera de usar Arrays.asList() para inicializar una lista
arrays aslist string java (2)
Creo que el caso 2 es como crear una new String[10]
. No puedes cambiar el tamaño pero puedes cambiar elementos. El caso 1 te permite hacer ambas cosas.
Esto muestra lo que puede hacer con el caso 2: http://grepcode.com/file/repository.grepcode.com/java/root/jdk/openjdk/8u40-b25/java/util/Arrays.java#Arrays.ArrayList
Esta pregunta ya tiene una respuesta aquí:
Yo uso este código a continuación. Ambos están trabajando bien en mi aplicación.
Caso 1.
List<String> coreModules =
new ArrayList<String>(Arrays.asList(
"TOOLBAR_TO_DO_LIST",
"TOOLBAR_PROPERTY",
"TOOLBAR_PEOPLE",
"TOOLBAR_INSURANCE",
"TOOLBAR_BATCH",
"TOOLBAR_INFORMATION_REFERENCE",
"TOOLBAR_LR_PROPERTY",
"TOOLBAR_CASE_FOLDER",
"TOOLBAR_INSPECTION_RESULT",
"TOOLBAR_MY_OFFICE"));
Caso 2.
List<String> coreModules =
Arrays.asList(
"TOOLBAR_TO_DO_LIST",
"TOOLBAR_PROPERTY",
"TOOLBAR_PEOPLE",
"TOOLBAR_INSURANCE",
"TOOLBAR_BATCH",
"TOOLBAR_INFORMATION_REFERENCE",
"TOOLBAR_LR_PROPERTY",
"TOOLBAR_CASE_FOLDER",
"TOOLBAR_INSPECTION_RESULT",
"TOOLBAR_MY_OFFICE");
Pero tengo algunas preguntas:
- ¿Cuál es mejor uno en cuanto a rendimiento?
- ¿En qué caso prefieres el caso 2?
Lea más: http://java91.blogspot.in/2017/01/what-is-best-way-of-using-arraysaslist.html
El caso 2 es mejor en cuanto a rendimiento PERO: devuelve una Lista con un tamaño inmutable. Lo que significa que no puede agregar / quitar elementos a / desde él:
Devuelve una lista de tamaño fijo respaldada por la matriz especificada. (Los cambios en la lista devuelta "escritura completa" en la matriz.)