? 1、声明时不需要指定长度因為它的大小是按照其中存储的数据来动态扩充与收缩的 ? 2、可以添加、插入、修改和移除数据 ? 3、可以存储任意类型的数据,因为在存储數据的时候它会把这些数据当作object类型来处理所以这也是它的不足之处 ? ArrayList不是类型安全的。为什么这么说 ? 因为将ArrayList中的数据拿出来使用嘚时候需要通过数据类型转换,否则会出现类型不匹配的错误 ? 例如ArrayList中存储了多个不同数据类型的数据时,当我们想用ArrayList中的数据来处理某些问题的时候就必须通过多次的类型转换才能拿出来。这就存在了装箱与拆箱的操作会带来很大的性能损失。 4、什么是装箱和拆箱 (1)装箱:就是将值类型的数据打包到引用类型的实例中 (2)拆箱:就是从引用类型中提取值类型 //比如将object对象a的值赋给int类型的变量i 注:裝箱和拆箱的过程是很耗损性能的 ? ArrayList拥有的优点泛型List都有(除了不能存储所有类型的数据)。 ? List在定义的时候必须声明一个类型的数据类型 定义时需要声明数据类型和长度 添加、修改、移除添加指定的数据、移除所有元素 添加、修改、移除添加指定的数据、移除所有元素 ┅个数组只能容纳一种数据类型 容纳所有数据类型,但是取出来的时候要通过数据类型转换 一个泛型List只能容纳一种数据类型