目录
什么是数组?
数组指的是一种容器,可以用来存储同种数据类型的多个值。
数组容器在存储数据的时候,需要结合隐式转换考虑。
隐式转换:
取值范围小的数据可以转换为取值范围大的数据。
取值范围:Byte < short < int < long < float < double
转换规则: 1)取值范围小的和取值范围大的进行运算,小的会先转换为大的,在进行运算。 2)byte、char、short三种类型的数据在运算的时候,都会先提升为int,然后在进行运算。
数组的定义
数据类型[] 数组名;
数据类型 数组名[];
数组的初始化
初始化:就是在内存中,为数组容器开辟空间,并将数据存入容器中的过程。
完整格式:数据类型[] 数组名 = new 数据类型[]{元素1,元素2...};
【注】数组的长度一旦确定就不能改变
int[] array = new int[]{ 1 , 2 , 3};
double[] array2 = new double[]{ 1.1 , 1.2 , 1.3};
//简写格式
int[] array = { 1 , 2 , 3};
double[] array2 = { 1.1 , 1.2 , 1.3};
数组的地址值
数组的地址值表示数组在内存中的位置。
package com.array;
public class ArrayAddress {
public static void main(String[] args) {
int[] arr = { 1 , 2 , 3 , 4 , 5 };
System.out.println(arr);
//[I@1b6d3586
// [ 表示当前是一个数组
// I 表示数组里的元素都是int类型的,D表示double
// @ 表示一个间隔符号,固定格式
// 1b6d3586 数组真正的地址值,16进制
}
}
数组的元素访问
索引:也叫做下标、角标
索引的特点:从0开始,逐个+1增长,连续不间断。
package com.array;
public class ArrayDemo {
public static void main(String[] args) {
//利用索引对数组中的元素进行访问
//1、获取数组里面的元素
//格式:数组名[索引]
int[] arr = { 1 , 2 , 3 , 4 , 5 };
//获取数组中第一个元素
int num = arr[0];
System.out.println(num); // 1
System.out.println(arr[1]);// 2
//把数据存储到数组中
//格式: 数组名[索引] = 具体数据/变量;
//一旦覆盖之后,原数据就不存在了
arr[2] = 100;
System.out.println(arr[2]);
}
}
数组的遍历
int[] arr2 = { 1 , 2 , 3 , 4 , 5 };
for(int i = 0; i < arr2.length ; i++){
System.out.println(arr2[i]);
}
//自动补全数组循环代码 arr2.fori