使用工具類Arrays.asList()把數組轉換成集合時,不能使用其修改集合相關的方法,它的add/remove/clear方法會拋出UnsupportedOperationException異常。數組
說明:asList的返回對象是一個Arrays內部類,並無實現集合的修改方法。工具
Arrays.asList體現的是適配器模式,只是轉換接口,後臺的數據還是數組。
code
String[] str = new String[] { "a", "b" }; List list = Arrays.asList(str);
第一種狀況:list.add("c"); 運行時異常。對象
第二種狀況:str[0]= "gujin"; 那麼list.get(0)也會隨之修改。接口