Array和ArrayList不同

时间:2023-03-10 04:04:55
Array和ArrayList不同

Employee[] array = new Employee[10];

ArrayList<Employee> staff = new ArrayList<>();

不同 Array ArrayList 利弊
长度是否可变 长度不可变array的长度一直为10 长度可变,通过add、remove添加或删除元素。但是在操作过程中是通过自动创建一个更大的数组,复制小的数组中的值到打的数组中,实现数组长度可变.  

new ArrayList<>(100)和

new Employee[100]

new Employee[100]数组长度一直为100  new ArrayList<>(100)代表创建一个长度为100的数组,但是仍然可以在他的基础上进行添加或者删除。之所以添加这个即wnsureCapacity(100)方法,是为了在100个之内是,不再需要重复的复制原来的对象到一个更大的数组中去,节省了内存的使用,加快了速度。当你不需要这么多空闲的内存时,可以调用trimToSize()方法将长度改变为当前实际存在的对象的长度,垃圾回收系统会恢复额外的内存。 <

staff.size和array.length()

两者一样,都是代表实际存在的对象的长度。
 
 

值得存取方法

通过索引array[i]可以进行很方便的存取

需要通过set和get方法,即staff.set(i,harry),staff.get(i)来存取。因为ArrayList类并不是java语言的一部分,它只是一个标准库中工具类(被某人所写) >