天天看點

關于Arrays.asList()造成的java.lang.UnsupportedOperationException異常

觸發原因

在項目中,利用Arrays.asList()将數組轉成List集合後,并對其進行remove操作時報java.lang.UnsupportedOperationException異常;

查詢部落格後,是因為轉換後的ArrayList類對象是Arrays内部的,并沒有實作remove方法,是以在使用的時候,直接報父類AbstractList抛出的java.lang.UnsupportedOperationException異常;

具體詳情參考部落格:https://blog.csdn.net/qq_33774822/article/details/83213947;

解決辦法

直接建立一個ArrayList類,并用addAll的方法将值傳入。這樣就能對其進行remove或其他操作

List<String> list=new ArrayList<String>();
list.addAll(Arrays.asList("1,2,3,4".split(",")));
		
System.out.println(list);//[1, 2, 3, 4]
list.remove(0);
System.out.println(list);//[2, 3, 4]