Java Collection How to - Convert List to Read-Only List








Question

We would like to know how to convert List to Read-Only List.

Answer

/* w  w  w .j a  va  2  s  .c o m*/
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.HashMap;
import java.util.HashSet;
import java.util.List;
import java.util.Map;
import java.util.Set;

public class Main {
  public static void main(String[] argv) throws Exception {

    List stuff = Arrays.asList(new String[] { "a", "b" });

    List list = new ArrayList(stuff);
    list = Collections.unmodifiableList(list);

    try {
      list.set(0, "new value");
    } catch (UnsupportedOperationException e) {
      System.out.println(e.getMessage());
    }

  }
}

The code above generates the following result.