是引用类型,并且数组大小不可变。我们观察下面的代码:

原数组变了吗?看上去好像是变了,但其实根本没变保留不清除。

但是,原有的5个元素的数组并没有改变,只是无法通过变量ns引用到它们而已。

如果数组元素不是基本类型,而是一个引用类型,那么,修改数组元素会有哪些不同?

字符串是引用类型,因此我们先定义一个字符串数组:

对于String[]类型的数组变量names,它实际上包含3个元素,但每个元素都指向某个字符串对象:

这里注意到原来names[1]指向的字符串”XYZ”并没有改变,仅仅是将names[1]的引用从指向”XYZ”改成了指向”cat”(这不与字符串的final属性冲突,我们改变的是数组的引用对象),其结果是字符串”XYZ”再也无法通过names[1]访问到了。