数组是 java 中效率最高的存储和随机访问对象引用序列的方式,本质是线性序列。为此付出的代价是,对象大小被固定,且在生命周期中不可变。
数组与 ArrayList 之间有很高的相似度,这是有意设计的,以方便两者之间进行切换。唯一明显的区别是访问元素的方式。
在所有类型的数组中,标识符都只是引用,指向一个在堆中真实存在的对象,而这个对象又是用来保存对其它对象的引用(对于基本类型的数组而言,不需要保存引用,直接保存值)。即:标识符>数组自己的对象>实际需要的对象的地址。数组对象可以通过初始化语法隐式创建,或者通过 new 关键字显式地创建。而 length 属性是数组对象中唯一可以被访问的内容(该属性只表示数组的大小,而不表示数组实际存储的元素数量)。访问对象只能使用“[]”语法。