数组总结
数组属于引用型变量,创建数组需要经过声明数组和为数组分配变量两个步骤
声明数组
声明数组包括数组变量的名字、数组的类型。
一维数组的声明
数组的元素类型 数组名[ ];
int arr[ ];
数组的元素类型 [ ] 数组名;
int [ ] arr;
二维数组的声明
数组的元素类型 数组名[ ][ ];
int arr[ ][ ]
数组的元素类型 [ ] 数组名;
int [ ][ ] arr;
声明数组时,也可以一次声明多个数组,例如:声明两个数组a和b
int [ ] a,b;
***注:与C/C++不同的是,Java在声明数组的时候,不能在数组方括号内指定数组元素的个数,例如:***
int a[10]; 或 int [10] a;两种方式为错误表达。
为数组分配元素
数组分配元素的格式
数组名 = new 数组元素的类型 [数组元素的个数];
array = new int [4];
为数组分配元素后,数组array获得4个用来存放int类型数据的变量,数组变量array中存放着这些元素的首地址,改地址称作数组的引用,这样数组就可以通过索引使用分配给它的变量,即操作它的元素。数组属于应用型变量,数组变量中存放着数组的首元素的地址,通过数组变量的名字加索引使用数组的元素。
声明数组和创建数组可以一起完成,例如
int array [ ] = new int [4];
二维数组和一维数组一样,在声明之后必须用new运算符为数组分配元素。例如:
int apple [ ][ ];
apple = new int [3][4];
或
int apple [ ][ ] = new int[3][4];
注:与C/C++不同的是,Java允许使用int型变量的值指定数组的元素的个数,例如:
int size = 30;
double number [ ] = new double [size];
使用数组元素
一堆数组通过索引符访问自己的元素,如array[0],array[1]等。需要注意的是索引从0开始,因此,数组中若有5个元素,那么索引到4为止。
length的使用
数组的元素的个数称作数组的长度。对于一维数组,“数组名.length”的值就是数组中元素的个数;对于二维数组“数组名.length”的值是它含有的一维数组的个数。例如,对于
float a[ ] = new float [12];
int b [ ][ ] = new int [3][6];
a.length的值是12,b.length的值是3。
数组的初始化
创建数组后,系统会给数组的每个元素一个默认的值,如,float型是0.0
在声明数组的同时也可以给数组的元素一个初始值,如
float boy[ ] = { 21.3f, 21.43f, 22.35f, 34.3f, 3535.3f }
相当于
float boy[ ] = new float[5];
boy[0] = 21,3f; boy[1] = 21.43f; boy[2] =22.35f; boy[3] = 34.3f; boy[4] = 3535.3f;
数组定义的三种方式
第一种 直接定义
数据类型 [ ] 数组名 = new 数据类型 [整数]
package demo1;
public class ShuZu {
public static void main(String[] args) {
//定义一个整数类型的数组
//数据类型 [ ] 数组名 = new 数据类型 [整数]
int [] arr = new int[7];
//给数据里面的数据来设置值
arr[0] = 32;
arr[1] = 76;
arr[2] = 98;
arr[3] = 3;
arr[4] = 12;
arr[5] = 2;
arr[6] = 85;
//遍历数组
for (int i = 0; i < arr.length; i++) {
System.out.print(arr[i]+" ");
}
}
}
Output:
32 76 98 3 12 2 85
第二种 赋值定义
数据类型 [ ] 数组名 = {值1,值2,.....}
package demo1;
public class ShuZu {
public static void main(String[] args) {
//定义数组的第二种方式,数组的长度根据初始值的个数来决定
//数据类型 [ ] 数组名 = {值1,值2,.....}
char [] arr = {'a','b','c','d'};
//打印数组长度
System.out.println(arr.length);
}
}
Output:
4
第三种 直接赋值定义
适用于传递数组的时候使用
数据类型 [ ] 数组名 = new 数据类型 [ ]{值1,值2,.....}
package demo1;
public class ShuZu {
public static void main(String[] args) {
//定义数组的第三种方式,
//数据类型 [] 数组名 = new 数据类型 []{值1,值2,.....}
//int [] arr = new int[] {1,2,3,4,5};
printArr(new int[]{1,2,3,4,5,6});
}
//接受数组的引用数据类型
public static void printArr(int[] arr){
for (int i = 0; i < arr.length; i++) {
System.out.println(arr[i]);
}
}
}
Output:
1
2
3
4
5
6
数组的遍历
package demo1;
public class ShuZu {
public static void main(String[] args) {
//定义一个整数类型的数组
int [] arr = new int[7];
//给数据里面的数据来设置值
arr[0] = 32;
arr[1] = 76;
arr[2] = 98;
arr[3] = 3;
arr[4] = 12;
arr[5] = 2;
arr[6] = 85;
//调用打印方法
printArr(arr);
}
//接受数组的引用数据类型
public static void printArr(int[] arr){
for (int i = 0; i < arr.length; i++) {
System.out.println(arr[i]);
}
}
}
代码输出:
32
76
98
3
12
2
85
文章对你有所帮助的话,欢迎给个赞或者 star,你的支持是对作者最大的鼓励,不足之处可以在评论区多多指正,交流学习!
版权归原作者 Ice yuan 所有, 如有侵权,请联系我们删除。