从图上可以看到,asList()返回的是一个ArrayList对象,但是普通的ArrayList对象也是可以删除元素的,直接在这个函数返回的ArrayList对象上删除元素却会抛出UnsupportedOperationException。看了注释可以知道,这个函数返回的ArrayList对象是一个固定长度的列表。
再看这个ArrayList对象的定义,发现这是一个内部类,而不是普通的ArrayList类。它没有add和remove函数,所以会出现上述错误。
从图上可以看到,asList()返回的是一个ArrayList对象,但是普通的ArrayList对象也是可以删除元素的,直接在这个函数返回的ArrayList对象上删除元素却会抛出UnsupportedOperationException。看了注释可以知道,这个函数返回的ArrayList对象是一个固定长度的列表。
再看这个ArrayList对象的定义,发现这是一个内部类,而不是普通的ArrayList类。它没有add和remove函数,所以会出现上述错误。