读书人

Collection创设不可修改的容器和同步控

发布时间: 2014-01-15 15:40:23 作者: rapoo

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异常。

读书人网 >编程

热点推荐