您的位置:首页 > 编程语言 > Java开发

Java只读集合与同步集合

2015-02-09 11:42 176 查看
直接上代码:

package com.xs.collection;

import java.util.ArrayList;
import java.util.Collections;
import java.util.List;

public class ReadOnly {

/**
* @param args
*/
public static void main(String[] args) {
List<String> list = new ArrayList<String>() {
private static final long serialVersionUID = 1L;
{
add("Tom");
add("Jim");
add("Jhon");
}
};
// 只读集合
List<String> readOnlyList = Collections.unmodifiableList(list);
System.out.println(readOnlyList.getClass());
// 同步集合
List<String> synchronizedList = Collections.synchronizedList(list);
System.out.println(synchronizedList.getClass());
}

}


如果试图对只读集合进行添加或修改,将会抛出UnsupportedOperationException异常:

public E set(int index, E element) {
throw new UnsupportedOperationException();
}


如果不希望方法返回的集合被修改,就可以使用只读集合;如果想要获取线程安全的集合,就可以使用同步集合。

只读集合:



同步集合:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: