什么是数组
数组是存储同一种数据类型多个元素的集合。也可以看成是一个容器。数组既可以存储基本数据类型,也可以存储引用数据类型。
如何定义数组
一维数组
格式1: 数据类型[] 数组名;
格式2: 数据类型 数组名[];
举例:
int [] a;
int a [];
上面两句都是定义了一个int型一维数组
二维数组
格式1: 数据类型[][] 数组名;
格式2: 数据类型 数组名 [][];
格式3:数据类型[] 数组名 [];
举例:
int[][] a;
int a [][];
int [] a [];
上面三句都是定义了一个名为a的二维数组
数组基本操作
数组的初始化
静态初始化
静态初始化是指我们给数组赋值,系统来给数组分配长度
举例
int[] a={1,2,3,4};
这里我们把1,2,3,4赋给了数组a,系统给他分配了长度为4
动态初始化
动态初始化是指由我们指定数组长度,系统来给数组赋值
举例
int[] a=new int[4];
我们指定数组a长度为4,系统给其中每个元素赋默认值0.
遍历数组
遍历数组是一个非常常用的操作,这里举例一下一维数组和二维数组的遍历
一维数组
public class demo {
public static void main(String[] args) {
int[] a={1,2,3,4,5};
for (int i = 0; i < a.length; i++) {
System.out.println(a[i]);
}
}
}
二维数组
public class demo {
public static void main(String[] args) {
int[][] a={{1,2,3},{4,5,6},{7,8,9}};
for (int i = 0; i < a.length; i++) {
for (int j = 0; j < a[i].length; j++) {
System.out.println(a[i][j]);
}
}
}
}
数组获取最值
获取最大值
public class demo {
public static void main(String[] args) {
int[] a={10,2,33,41,15,64,87,8,99};
int max=0;
for (int i = 0; i < a.length-1; i++) {
if (a[i]>a[i+1]&&max<a[i]){
max=a[i];
}else if (max>a[i]){
max=max;
}else if(a[i]<a[i+1]){
max=a[i+1];
}
}
System.out.println("最大值是"+max);
}
}
获取最小值
public class demo {
public static void main(String[] args) {
int[] a={10,2,33,41,15,64,87,8,99};
int min=a[1];
for (int i = 0; i < a.length-1; i++) {
if (a[i]<a[i+1]&&min>a[i]){
min=a[i];
}else if (min<a[i]){
min=min;
}else if(a[i]>a[i+1]){
min=a[i+1];
}
}
System.out.println("最小值是"+min);
}
}
逆置数组
public class demo {
public static void main(String[] args) {
int[] arr = {11, 32, 55, 47, 79, 23};
for (int i = 0; i <= (arr.length - 1) / 2; i++) {
int a = arr[i];
arr[i] = arr[arr.length - 1 - i];
arr[arr.length - 1 - i] = a;
}
}
}