java.lang.UnsupportedOperationException是不支持功能異常,常常出現(xiàn)在使用Arrays.asList()后調(diào)用add,remove這些method時(shí)。
這是由于:
Arrays.asList() 返回java.util.Arrays$ArrayList, 而不是ArrayList。Arrays$ArrayList和ArrayList都是繼承AbstractList,remove,add等method在AbstractList中是默認(rèn)throw UnsupportedOperationException而且不作任何操作。ArrayList override這些method來對(duì)list進(jìn)行操作,但是Arrays$ArrayList沒有override remove(int),add(int)等,所以throw UnsupportedOperationException。
解決方法:
可以使用list集合的子類來實(shí)現(xiàn)這些方法。