Dada una ArrayList, la tarea es hacer que esta ArrayList sea de solo lectura en Java.
Ejemplos:
Input: ArrayList: [1, 2, 3, 4, 5] Output: Read-only ArrayList: [1, 2, 3, 4, 5] Input: ArrayList: [geeks, for, geeks] Output: Read-only ArrayList: [geeks, for, geeks]
Una ArrayList se puede hacer de solo lectura fácilmente con la ayuda del método Collections.unmodifiableList(). Este método toma el ArrayList modificable como parámetro y devuelve la vista no modificable de solo lectura de este ArrayList.
Sintaxis:
readOnlyArrayList = Collections.unmodifiableList(ArrayList);
A continuación se muestra la implementación del enfoque anterior:
// 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'); list.add('Z'); // printing the list System.out.println("Initial list: " + list); // getting readonly list // using unmodifiableList() method List<Character> immutablelist = Collections .unmodifiableList(list); // printing the list System.out.println("ReadOnly ArrayList: " + immutablelist); // Adding element to new Collection System.out.println("\nTrying to modify" + " the ReadOnly ArrayList."); immutablelist.add('A'); } catch (UnsupportedOperationException e) { System.out.println("Exception thrown : " + e); } } }
Producción:
Initial list: [X, Y, Z] ReadOnly ArrayList: [X, Y, Z] Trying to modify the ReadOnly ArrayList. Exception thrown : java.lang.UnsupportedOperationException
Publicación traducida automáticamente
Artículo escrito por RishabhPrabhu y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA