Java入门-数组


数组是用来存储固定大小的同类型元素。一旦数组初始化完成,数组在内存中所占的空间将被固定下来,因此数组的长度不可以改变。即使某个数组的元素被清空,但是它所占的空间依然保留。

数组本身也是一种引用类型,既可以存储基本数据类型,也可以存储引用类型,只要存储的数组元素具有相同的类型即可。

初始化

动态初始化

执行动态初始化时,系统会根据声明的数组类型自动为数组元素分配初始值。如果是引用类型,则数组元素的初始值为 null。

int[] scores = new int[5];

静态初始化

显式指定每个元素的初始值

int[] scores = {1,2,3,4};

遍历数组

foreach 遍历数组

int[] scores = {1,2,3,4};

for (int score : scores) {
    System.out.println(score);
}

数组的本质

将数组看成两个部分,一个部分是数组引用,也就是在代码中定义的数组引用变量;另一部分是实际的数组对象,这部分是在堆内存中运行的,通常无法直接访问它,只能通过引用变量来访问。

二维数组

二维数组本质上还是一维数组,只是其数组元素也是引用,数组元素里保存的引用指向一维数组。

String [][] str1 = {new String[3], new String[]{"hello"}};

代码示意图如下:


文章作者: Tianny
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 Tianny !
评论
 上一篇
Java入门-方法传参 Java入门-方法传参
无论是基本类型的值传递,还是引用类型的参数传递,在 Java 中方法总是采用按值调用。对于引用类型,传递的是其对应的内存空间地址。 基本类型的值传递public class PrimitiveTransferTest { pub
2020-03-17
下一篇 
Java入门-控制结构 Java入门-控制结构
if-elseif (condition) { statement; } else { statement; } Switchswitch (表达式) { case value1: statement1;
2020-03-15
  目录