前言:
Arrays.asList()返回ArrayList对象。但是这个ArrayList对象是Arrays内部类。
so方法返回的ArrayList对象的特性:
- 该方法不适用于基本数据类型(byte,short,int,long,float,double,boolean)
- 这个因为ArrayList本身就支持基本类型
- 该方法将数组与列表链接起来,当更新其中之一时,另一个自动更新
- 原因:数组和集合是指向同一个对象的。
- 不支持add和remove方法
- 这个是由于返回的ArrayList对象是Arrays内部类,不能进行add和remove。
-解决方法:- 直接new 一个java.util包中的ArrayList
- ArrayList list = new ArrayList(Arrays.asList(peoples)) ;[peoples为数组]
- 使用guava提供的 List list = Lists.newArrayList(arrays);
- 直接new 一个java.util包中的ArrayList
- 这个是由于返回的ArrayList对象是Arrays内部类,不能进行add和remove。