数组是引用数据类型,由多个类型统一的数据构成。在Java中数组初始化主要包括两种形式:动态初始化和静态初始化。
动态初始化的基本格式为:
1、数据类型[ ] + 数组名称;数组名称 = new +数据类型[数组长度];
2、数据类型[ ] + 数组名称 = new+数据类型[数组长度];
静态初始化的基本格式为:
1、数据类型[ ] + 数组名称;数组名称 = new +数据类型[ ]{元素值1,元素值2,元素3,…};
2、数据类型[ ] + 数组名称 = new + 数据类型[ ]{元素值1,元素值2,元素3,…};
3、数据类型[ ] + 数组名称 = {元素值1,元素值2,元素3,…};(简写格式)
此外,还需掌握基本的数组操作(读取、赋值、求数组长度等等)。下面代码将以两个数组为例,分别介绍数组中元素求和以及数组中元素从大到小排序(冒泡排序)算法。
import java.util.Arrays;
public class Demo04Array {
public static void main(String[] args) {
// 定义数组,以及数组初始化的两种方式
int[] array01;
int[] array02;
array01 = new int[5]; // 动态初始化
array01[0] = 1; // 手动赋值
array01[1] = 6;
array01[3] = 2; // array01[2]虽然没有手动赋值,但是有默认值,int默认值为0
array01[4] = 10;
array02 = new int[] { 0, 7, 5, 9, 2, 100, 3, 2, 9 }; // 静态初始化
// 静态初始化的简便格式: 数据类型[] 数据名称 = {数据值1,数据值2,数据值3...}
// 求array01数组中元素的和
int sum = 0;
for (int i = 0; i < array01.length; i++) {
sum += array01[i];
}
System.out.println("array01数组中的元素和为:" + sum);
// 对array02数组中的元素值进行从大到小排序
// 此处使用冒泡排序法
int mid;
for (int i = 0; i < array02.length - 1; i++) { // 注意数组索引范围,避免数组索引越界异常
for (int j = 0; j < array02.length - 1 - i; j++) {
if (array02[j] < array02[j + 1]) {
mid = array02[j];
array02[j] = array02[j + 1];
array02[j + 1] = mid;
}
}
}
System.out.println("冒泡排序法的结果为:" + Arrays.toString(array02));// 快速打印数组中所有元素
}
}