【狂神说Java学习笔记】阶段一JavaSE基础(八)Java数组

笔记内容:狂神说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}};

内存分配:

posted @ 2020-08-11 11:16  林兰  阅读(199)  评论(0编辑  收藏  举报