数组的概念:是一种类型,可以同时存放多个数据值
数组的特点:
1、数组是一种引用类型
2、数组当中的多个数据,数据类型必须统一
3、数组的长度在程序运行期间不可改变
数组的初始化,在内存中创建一个数组,并且向其中赋予一些默认值
数组的两种常见的初始化方式
1、动态初始化(指定长度):在创建数组时,指定数组中的数据元素的个数
2、静态初始化(指定内容):在创建数组时,不指定数个个数,而是将具体的数据内容进行指定
动态初始化数组的格式:
数据类型[] 数组名称=new 数据类型[数组长度];
含义:
1、左侧数据类型:数组当中全部数据是什么数据类型
2、左侧的中括号:代表这是一个数组
3、数组名称:给数组去个名字
4、右侧的new:代表创建数组的动作
5、右侧的数据类型:和左侧的数据类型保持一致
6、数组长度:数组当中,可以保存多少个数据,是一个int型
静态初始化数组的格式:
标准格式:数据类型[] 数组名称=new 数据类型[]{元素1,元素2};
省略格式:数据类型[] 数组名称={元素1,元素2};
注意事项:
1、虽静态初始化没有直接告诉长度,但是根据大括号中的元素个数,能推算出长度
2、静态初始化标准格式可以拆分成两个步骤(先定义步骤,然后给变量赋值)
3、懂态初始化标准格式可以拆分成两个步骤(先定义步骤,然后给变量赋值)
4、静态初始化的省略格式不可以拆分成两个步骤
使用建议:
不能确定数组内容时,使用动态初始化;能确定数组内容时使用静态初始化
package demo01;
/*
数组的概念:是一种类型,可以同时存放多个数据值
数组的特点“
1、数组是一种引用类型
2、数组当中的多个数据,数据类型必须统一
3、数组的长度在程序运行期间不可改变
数组的初始化,在内存中创建一个数组,并且向其中赋予一些默认值
数组的两种常见的初始化方式
1、动态初始化(指定长度):在创建数组时,指定数组中的数据元素的个数
2、静态初始化(指定内容):在创建数组时,不指定数个个数,而是将具体的数据内容进行指定
动态初始化数组的格式:
数据类型[] 数组名称=new 数据类型[数组长度];
含义:
1、左侧数据类型:数组当中全部数据是什么数据类型
2、左侧的中括号:代表这是一个数组
3、数组名称:给数组去个名字
4、右侧的new:代表创建数组的动作
5、右侧的数据类型:和左侧的数据类型保持一致
6、数组长度:数组当中,可以保存多少个数据,是一个int型
静态初始化数组的格式:
标准格式:数据类型[] 数组名称=new 数据类型[]{元素1,元素2};
省略格式:数据类型[] 数组名称={元素1,元素2};
注意事项:
1、虽静态初始化没有直接告诉长度,但是根据大括号中的元素个数,能推算出长度
2、静态初始化标准格式可以拆分成两个步骤(先定义步骤,然后给变量赋值)
3、懂态初始化标准格式可以拆分成两个步骤(先定义步骤,然后给变量赋值)
4、静态初始化的省略格式不可以拆分成两个步骤
使用建议:
不能确定数组内容时,使用动态初始化;能确定数组内容时使用静态初始化
*/
public class demo08 {
public static void main(String[] args) {
//创建动态数组
//创建一个数组,里面能存放300个int型数据
int[] a=new int[300];
//创建静态数组
//创建一个数组,里面装的都是int类型,具体是:5、15、25
//使用标准格式
int[] b=new int[]{5,15,25};
//使用省略格式
int[] c={5,15,25};
// 静态初始化标准格式可以拆分成两个步骤(先定义步骤,然后给变量赋值)
int[] d;
d=new int[]{1,15,25};
}
}
直接打印数组的名称,得到的结果是数组对应的内存地址哈希值
访问数组元素的格式:
数组名称[索引值]
索引值:就是一个int数字,代表数组当中元素的编号,索引值从0开始,到”数组长度-1“为止
访问动态初始化数组时,其中的元素将自动拥有一个默认值
1、如果是整数类型,默认是0
2、如果是浮点类型,默认是0.0
3、如果是字符类型,默认是'u0000'
4、如果是布尔类型,默认是false
5、如果是引用类型,默认是null
注意事项
静态初始化其实也有默认值的过程,只不过系统自动马上将默认值替换成了大括号当中的具体数值
package demo01;
/*
直接打印数组的名称,得到的结果是数组对应的内存地址哈希值
访问数组元素的格式:
数组名称[索引值]
索引值:就是一个int数字,代表数组当中元素的编号,索引值从0开始,到”数组长度-1“为止
访问动态初始化数组时,其中的元素将自动拥有一个默认值
1、如果是整数类型,默认是0
2、如果是浮点类型,默认是0.0
3、如果是字符类型,默认是'u0000'
4、如果是布尔类型,默认是false
5、如果是引用类型,默认是null
注意事项
静态初始化其实也有默认值的过程,只不过系统自动马上将默认值替换成了大括号当中的具体数值
*/
public class demo09Array {
public static void main(String[] args) {
int[] ArrayA={10,20,30};
//直接打印数组的名称,得到的结果是数组对应的内存地址哈希值
System.out.println(ArrayA);//结果是:[I@1540e19d
//打印数组中的第一个元素内容
int[] ArrayB=new int[5];
//访问动态初始化数组时,其中的元素将自动拥有一个默认值
System.out.println(ArrayB[0]);
//给动态数组赋值
ArrayB[0]=10;
System.out.println(ArrayB[0]);
}
}