Saltar al contenido

Lista no modificable en java

Te traemos la respuesta a este atascamiento, o por lo menos eso creemos. Si continuas con alguna duda puedes dejarlo en el apartado de preguntas, que para nosotros será un placer ayudarte

Solución:

Necesitas java.util.Collections:

return Collections.unmodifiableList(oListeRet);

Si tiene que escribir el suyo propio, haga que esa clase implemente el List interfaz y lanzar excepciones para los métodos que modifican los contenidos.

Colecciones.unmodifiableList

Devuelve una vista no modificable de la lista especificada. Este método permite que los módulos proporcionen a los usuarios acceso de “solo lectura” a las listas internas. Las operaciones de consulta en la lista devuelta “leen” a la lista especificada y los intentos de modificar la lista devuelta, ya sea directamente o a través de su iterador, dan como resultado una UnsupportedOperationException. La lista devuelta será serializable si la lista especificada es serializable. De manera similar, la lista devuelta implementará RandomAccess si la lista especificada lo hace.

Java-9 proporciona un nuevo método para crear no modificables/inmutables List:

jshell> List list = List.of(1,2,3);
list ==> [1, 2, 3]

jshell> list.add(10);
|  java.lang.UnsupportedOperationException thrown: 
|        at ImmutableCollections.uoe (ImmutableCollections.java:70)
|        at ImmutableCollections$AbstractImmutableList.add (ImmutableCollections.java:76)
|        at (#6:1)

List.of crea una lista inmutable que contiene un número arbitrario de elementos.

Comentarios y calificaciones

Agradecemos que quieras añadir valor a nuestra información dando tu experiencia en las críticas.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *