Arrays.asList()的对象不能调用add/remove/clear方法
使用工具类Arrays.asList()把数组转换成集合时,不能使用其修改集合相 关的方法,它的add/remove/clear方法会抛出 UnsupportedOperationException异常 •
级别:【CRITICAL】 •
规约类型:BUG •
最坏影响:程序错误,抛出异常 •
说明:
sList的返回对象是一个Arrays内部类,并没有实现集合的修改 方法。
Arrays.asL ist体现的是适配器模式,只是转换接口,后台的数据 仍是数组。
String[] str = new String[] { "yang", "hao" }; List list = Arrays.asList(str);
第一种情况:list.add("yangguanbao"); 运行时异常。
第二种情况:str[0] = "changed"; 也会随之修改,反之亦然。