笔记内容:狂神说Java阶段一Java基础视频P51--P59
狂神说Java视频链接
目录
一、数组的声明与创建
二、数组初始化
三、数组的特点
四、基本使用
五、多维数组
数组的定义:相同类型数据的有序集合
数组的范围:[0, n-1]
一、数组的声明与创建
//声明
int[] nums; //首选方法
int nums2[]; //效果相同,但不是首选方法
//创建
int[] nums = new int[10]; //一定要分配内存大小(而声明没有分配内存大小)
二、数组初始化
1. 静态初始化
int a[] = {1,2,3}; //基本类型(数据类型)初始化
Array[] arrays = {new Array(1,1), new Array(2,2)}; //引用类型(方法)初始化
2. 动态初始化
int[] a = new int[10];
a[0] = 1;
a[1] = 2;
动态初始化包含“默认初始化”,也就是没被初始化的元素就是0。
3. 默认初始化
数组是引用类型,它的元素相当于类的实例变量,因此数组一经分配空间,其中的每个元素也被按照实例变量同样的方式被隐式初始化。
三、数组的特点
1、长度确定。一旦被创建,大小不可改变。
2、元素必须是相同类型,不允许出现混合类型。
3、数组中的元素可以是任何数据类型,包括基本类型和引用类型。
4、数组变量属引用类型,数组也可以看成是对象,数组中的每个元素相当于该对象的成员变量。数组本身就是对象,Java中对象是在堆中,因此数组无论保存原始类型还是其他对象类型,数组对象本身是在堆中。
*关于数组在内存(堆&栈)中的存储方式:
四、基本使用
4.1 打印方法一
int[ ] arrays = {1,2,3,4,5};
for(int i = 0; i < array.lenght; i++) {
System.out.println(arrays[i])
}
4.2 打印方法二
int[ ] arrays = {1,2,3,4,5};
for(int array: arrays) {
System.out.println(arrays[i])
}
4.3 反转reverse
int[ ] arrays = {1,2,3,4,5};
int[ ] result = new int[arrays.length];
for (int i = 0, j = result.length-1; i < arrays.length; i++, j--) {
result[j] = arrays[i];
}
五、多维数组
//一维数组初始化
int[] array = {1,2,3,4};
//二维数组初始化
int[][] array = {{1,2},{2,3},{3,4},{4,5}};
内存分配: