一,数组的创建
public static void main(String[] args) {
int[] array1 = new int[10];//数组的动态初始化:数组类型 [] 数组名称 = new 数组类型 [指定数组长度]
//数组的静态初始化:数组类型 [] 数组名称 = new 数组类型[] {元素一,元素二,元素三...}
int[] array2 = new int[]{10, 20, 30, 40, 50};
//数组类型 [] 数组名称 = {元素一,元素二,元素三...}
int[] array3 ={10, 20, 30, 40, 50};//数组的静态初始化简化模式
}
二,访问数组的元素
索引值:就是一个int数字,代表数组元素在数组当中的编号。 脚下留心:索引值是从"0"开始计算的,一直到数组的元素个数-1为止。
静态初始化数组:
public static void main(String[] args) {
//声明一个静态初始化数组
int [] array = new int[]{10,20,30,40,50};
//取出数组元素
System.out.println(array[0]);//10 数组名称[索引值]
System.out.println(array[1]);//20 ...
System.out.println(array[2]);//30
System.out.println(array[5]);//.ArrayIndexOutOfBoundsException:数组下标越界一异常
//...
}
动态初始化数组:
public static void main(String[] args) {
//创建一个动态初始化数组
int[] array = new int[5];
System.out.println(array);//内存地址值:[I@1540e19d
System.out.println(array[0]);//0
System.out.println(array[1]);//0
System.out.println(array[2]);//0
}
脚下留心:使用动态初始化数组的时候,其中的元素都会有一个默认值
如果是整数类型:则是0;
如果是浮点型,则是0.0;
如果是字符类型,则是'/u0000';
如果是布尔类型,则是false;
如果是引用类型,则是null;
静态初始化也是有默认值的,只不过系统自动马上将默认值替换为大括号中具体的值;
三,数组的遍历
public static void main(String[] args) {
int[] array = {10, 30, 50, 40, 80, 10, 20};
int max = array[0];
for (int i = 1; i < array.length; i++) {
if (array[i] > max) {
max = array[i];
}
}
System.out.println("最大值为:"+max);//最大值为:80
}
四,数组元素的反转
public static void main(String[] args) {
int[] array = {10, 20, 30, 40, 50, 60, 70};
for (int i = 0; i < array.length; i++) {
System.out.println(array[i]);
}
//10,20,30,40,50,60,70
System.out.println("数组反转后");
for (int min = 0, max = array.length - 1; min < max; min++, max--) {
int temp = array[min];
array[min] = array[max];
array[max] = temp;
}
for (int i : array) {
System.out.println(i);
}
//70,60,50,40,30,20,10
}