如何在Java中创建只读列表?

让我们首先用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)