java.lang.UnsupportedOperationException at java.ut
2011-09-20 11:28
411 查看
常常使用Arrays.asLisvt()后调用add,remove这些method时出现java.lang.UnsupportedOperationException异常。这是由于:
Arrays.asLisvt() 返回java.util.Arrays$ArrayList, 而不是ArrayList。Arrays$ArrayList和ArrayList都是继承AbstractList,remove,add等 method在AbstractList中是默认throw UnsupportedOperationException而且不作任何操作。ArrayList override这些method来对list进行操作,但是Arrays$ArrayList没有override remove(int),add(int)等,所以throw
UnsupportedOperationException。
解决方法是使用Iterator,或者转换为ArrayList
List list = Arrays.asList(a[]);
List arrayList = new ArrayList(list);
import java.util.Arrays;
import java.util.List;
public class Test {
public static void main(String[] args) {
String[] strArray = new String[6];
for(int i = 0; i < 4; ){
strArray[i] = String.valueOf(i++);
}
List<String> testList = Arrays.asList(strArray);
testList.add(String.valueOf(10));
testList.add(String.valueOf(11));
System.out.println(testList);
}
}
Arrays.asLisvt() 返回java.util.Arrays$ArrayList, 而不是ArrayList。Arrays$ArrayList和ArrayList都是继承AbstractList,remove,add等 method在AbstractList中是默认throw UnsupportedOperationException而且不作任何操作。ArrayList override这些method来对list进行操作,但是Arrays$ArrayList没有override remove(int),add(int)等,所以throw
UnsupportedOperationException。
解决方法是使用Iterator,或者转换为ArrayList
List list = Arrays.asList(a[]);
List arrayList = new ArrayList(list);
import java.util.Arrays;
import java.util.List;
public class Test {
public static void main(String[] args) {
String[] strArray = new String[6];
for(int i = 0; i < 4; ){
strArray[i] = String.valueOf(i++);
}
List<String> testList = Arrays.asList(strArray);
testList.add(String.valueOf(10));
testList.add(String.valueOf(11));
System.out.println(testList);
}
}
相关文章推荐
- java.lang.UnsupportedOperationException at java.util.AbstractList
- java.lang.UnsupportedOperationException at java.util.AbstractList
- java.lang.UnsupportedOperationException at java.util.AbstractList
- java.lang.UnsupportedOperationException at java.util.AbstractList
- 使用TextInputLayout所遇到的坑-java.lang.UnsupportedOperationException: Failed to resolve attribute at index
- Caused by: java.lang.UnsupportedOperationException: Can't convert value at index 1 to dimension
- java.lang.UnsupportedOperationException 解决方案
- 【转】java.lang.UnsupportedOperationException
- Arrays.asList()引起的java.lang.UnsupportedOperationException
- java.lang.UnsupportedOperationException: This parser does not support specification "null”version ..
- java.lang.UnsupportedOperationException
- java.lang.UnsupportedOperationException
- JPA集成时报 java.lang.UnsupportedOperationException: The application must supply JDBC connections
- java.lang.UnsupportedOperationException: addView(View, LayoutParams) is not supported in AdapterView
- java.lang.UnsupportedOperationException异常
- java.lang.UnsupportedOperationException: Can't convert to integer: type=0x3
- java.lang.UnsupportedOperationException
- hibernate程序的异常:java.lang.UnsupportedOperationException: The user must supply a JDBC connection
- java.lang.UnsupportedOperationException
- java.lang.UnsupportedOperationException