数组定义与访问
定义数组:
数据类型[] 数组名 = new 数据类型[元素个数或数组长度];
如: int[] x = new int[100];
访问其中数据:
public static void main(String[] args) {
3 int[] arr; // 声明变量
4 arr = new int[3]; // 创建数组对象
5 System.out.println("arr[0]=" + arr[0]); // 访问数组中的第一个元素
6 System.out.println("arr[1]=" + arr[1]); // 访问数组中的第二个元素
7 System.out.println("arr[2]=" + arr[2]); // 访问数组中的第三个元素
8 System.out.println("数组的长度是:" + arr.length); // 打印数组长度
9 }
10 }
输出:
arr[0]=0
arr[1]=0
arr[2]=0
数组的长度是:3
动态初始化
定义数组时只指定数组的长度,由系统自动为元素赋初值
静态初始化
在定义数组的同时就为数组的每个元素赋值。具体格式如下:
类型[] 数组名 = {元素,元素,元素,……};
如:int[] arr = { 1, 2, 3, 4 }; // 静态初始化
需要注意的是
千万不可写成int[] arr = new int[4]{1,2,3,4};,这样写编译器会报错。原因在于编译器会认为数组限定的元素个数[4]与实际存储的元素{1,2,3,4}个数有可能不一致,存在一定的安全隐患。
定义数组后元素默认初始值
数据类型 | 默认初始化值 |
---|---|
byte、short、int、long | 0 |
float、double | 0.0 |
char | 一个空字符(空格),即’\u0000’ |
boolean | false |
引用数据类型 | null,表示变量不引用任何对象 |
获取数组中元素的最大值
public class ArrayDemo05 {
public static void main(String[] args) {
int[] arr = { 4, 1, 6, 3, 9, 8 }; // 定义一个数组
int max = arr[0]; // 定义变量max用于记住最大数,首先假设第一个元素为最大值
// 下面通过一个for循环遍历数组中的元素
for (int x = 1; x < arr.length; x++) {
if (arr[x] > max) { // 比较 arr[x]的值是否大于max
max = arr[x]; // 条件成立,将arr[x]的值赋给max
}
}
System.out.println("max=" + max); // 打印最大值
}
}
打印数组
public class pringArray {
public static void main(String[] args) {
int[] arr = {1,4,6,8,9,10};
printArray(arr);
}
public static void printArray(int[] arr) {
System.out.print("[");
for(int i = 0; i<arr.length;i++) {
if(i==arr.length-1) {
System.out.print(arr[i]);
}else {
System.out.print(arr[i]+",");
}
}
System.out.print("]");
}
}
注意:输出语句中要使用双引号,不能用单引号