一、数组的概念以及定义:
1、 数组是存储同一种数据类型多个元素的集合,也可以看作是一个容器。
2、数组既可以存储基本数据类型,也可以存储引用数据类型。
二、一维数组:
1、一维数组的定义:
数据类型 [ ] 数组名 = new 数据类型 [ 数组长度 ] ;
2、数组的初始化就是为数组开辟连续的内存空间,并为每个数组元素赋予一个值。
a.动态初始化:只给出长度,由系统给定初始化值。
数据类型 [ ] 数组名 = new 数据类型 [ 数组长度 ];
b.静态初始化:
数据类型 [ ] 数组名 = new 数据类型 {元素1,元素2,....,元素n};
3、一维数组的遍历:
public static void print(int[ ] arr)
{
for (int i = 0;i < arr.length ;i++ ) //arr.length数组的长度
{
System.out.print(arr[i] + " ");
}
}
4、获取一维数组中元素的最大值:
public static void main(String[] args)
{
int[] arr = {12,45,3,15,62,17,85,42};
int max = getMax(arr);
System.out.println(max);
}
public static int getMax(int[ ] arr)
{
int max = arr[ 0 ];
for(i = 1;i < arr.length;i++)
{
if(max < arr[ i ])
{
max = arr[ i ];
}
}
return max;
}
5、一维数组元素对调:
public static void reverseArray(int[] arr) {
for (int i = 0;i < arr.length / 2 ; i++) {
//arr[0]和arr[arr.length-1-0]交换
//arr[1]和arr[arr.length-1-1]交换
//arr[2]和arr[arr.lentth-1-2]
//...
int temp = arr[i];
arr[i] = arr[arr.length-1-i];
arr[arr.length-1-i] = temp;
}
}
三、二维数组:
1、二维数组的定义:
数组类型[ ][ ] 数组名 = new 数组类型[m][n];
2、二维数组的另外两种定义方式:
a.数据类型 数组名[][] = new 数据类型[m][n];
b.数据类型[] 数组名[] = new 数据类型[m][n];
3、注意下面定义的区别:
int x;
int y;
int x,y;
int[] x;
int[] y[];
int[] x,y[]; x是一维数组,y是二维数组
4、二维数组的遍历:
int[][] arr = {{1,2,3},{4,5},{6,7,8,9}};
for (int i = 0;i < arr.length ;i++ ) { //获取到每个二维数组中的一维数组
for (int j = 0;j < arr[i].length ;j++ ) { //获取每个一维数组中的元素
System.out.print(arr[i][j] + " ");
}
System.out.println();
}
5、二维数组的求和:
需求:公司年销售额求和
某公司按照季度和月份统计的数据如下:单位(万元)
第一季度:22,66,44
第二季度:77,33,88
第三季度:25,45,65
第四季度:11,66,99
int[][] arr = {{22,66,44},{77,33,88},{25,45,65},{11,66,99}};
int sum = 0; //定义变量,记录每次相加的结果
for (int i = 0;i < arr.length ;i++ ) { //获取每一个一维数组
for (int j = 0;j < arr[i].length ;j++ ) { //获取每一个一维数组中的元素
sum = sum + arr[i][j]; //累加
}
}
System.out.println(sum);