Collection创建不可修改的容器和同步控制的容器
1,创建一个只读的Collection或Map,有时可以带来很大的方便。创建的方式就是使用Collections.unmodifiableSortedSet
例如:
? ? ? ? ? ? ?List<String> a=Collections.unmodifiableList(
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?new ArrayList<String>(data));
? ? ? ? ? ? ?ListIterator<String> lit=a.listIterator();
? ? ? ? ? ? //! ? ? lit.add("One"); ? ?//Can't change it
在将容器设为只读之前,必须填入有意义的数据。
?
2.Collection类有办法能够自动同步整个容器,其语法和1类似。
例如:
? ? ? ? ? ? ? ? ? ? Set<String> ss=Collections.synchronizedSortedSet(
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?new TreeSet<String>());
?
3.Java容器的快速报错保护机制:
? ? ? ? ? ?为了防止多个进场功能同时修改同一个容器的内容,如果在你迭代便利某个容器的过程中,另一个进程介入其中,并且插入,删除或修改此容器内的某个对象时,就会抛出ConcurrentModeficationException异常。