让我们首先用Java创建一个列表-
List<String>list = new ArrayList<String>(); list.add("A"); list.add("B"); list.add("C");
现在要将上面的列表转换为只读,请使用Collections-
list = Collections.unmodifiableList(list);
我们已将上面的列表转换为只读。现在,如果您尝试将更多元素添加到列表中,则以下错误将可见-
Exception in thread "main" java.lang.Error: Unresolved compilation problem:
import java.util.ArrayList; import java.util.Collections; import java.util.List; public class Demo { public static void main(String args[]) throws Exception { List<String>list = new ArrayList<String>(); list.add("A"); list.add("B"); list.add("C"); list = Collections.unmodifiableList(list); //抛出异常,因为它现在是只读列表 list.add("D"); list.add("E"); list.add("F"); System.out.println(list); } }
输出如下。由于这是一个只读列表,因此将显示错误-
输出结果
Exception in thread "main" java.lang.Error:Unresolved compilation problem: String literal is not properly closed by a double-quote at Amit/my.Demo.main(Demo.java:18)