El método unmodifiableList () de la clase java.util.Collections se utiliza para devolver 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.
Sintaxis:
public static <T> ListT> unmodifiableList(List<? extends T> list)
Parámetros: este método toma la lista como un parámetro para el cual se devolverá una vista no modificable.
Valor devuelto: este método devuelve una vista no modificable de la lista especificada.
A continuación se muestran los ejemplos para ilustrar el método nomodificableList()
Ejemplo 1:
// Java program to demonstrate // unmodifiableList() method import java.util.*; public class GFG1 { public static void main(String[] argv) throws Exception { try { // creating object of ArrayList<Character> List<Character> list = new ArrayList<Character>(); // populate the list list.add('X'); list.add('Y'); // printing the list System.out.println("Initial list: " + list); // getting unmodifiable list // using unmodifiableList() method List<Character> immutablelist = Collections .unmodifiableList(list); // printing the list System.out.println("Unmodifiable list: " + immutablelist); } catch (UnsupportedOperationException e) { System.out.println("Exception thrown : " + e); } } }
Initial list: [X, Y] Unmodifiable list: [X, Y]
Ejemplo 2: Para UnsupportedOperationException
// Java program to demonstrate // unmodifiableList() method import java.util.*; public class GFG1 { public static void main(String[] argv) throws Exception { try { // creating object of ArrayList<Character> List<Character> list = new ArrayList<Character>(); // populate the list list.add('X'); list.add('Y'); // printing the list System.out.println("Initial list: " + list); // getting unmodifiable list // using unmodifiableList() method List<Character> immutablelist = Collections .unmodifiableList(list); // Adding element to new Collection System.out.println("\nTrying to modify" + " the unmodifiablelist"); immutablelist.add('Z'); } catch (UnsupportedOperationException e) { System.out.println("Exception thrown : " + e); } } }
Initial list: [X, Y] Trying to modify the unmodifiablelist Exception thrown : java.lang.UnsupportedOperationException
Publicación traducida automáticamente
Artículo escrito por RohitPrasad3 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA