简介

  数组是指一组数据的集合,数组中的每个数据被称作元素。在数组中可以存放任意类型的元素,但同一个数组里存放的元素类型必须一致。

基本用法

  在Java中,可以使用以下格式来定义一个数组。如下
数据类型[] 数组名 = new 数据类型[元素个数或数组长度];

int[] x = new int[100];

  上述语句就相当于在内存中定义了100个int类型的变量,第一个变量的名称为x[0],第二个变量的名称为x[1],以此类推,第100个变量的名称为x[99],这些变量的初始值都是0。为了更好地理解数组的这种定义方式,可以将上面的一句代码分成两句来写,具体如下:

int[] x;// 声明一个int[]类型的变量
x = new int[100];// 创建一个长度为100的数组

实例

简单示例

/*
 * 计算数组中的最大值
 */
public class ArrayDemo {

    public static void main(String[] args) {
        //定义数组,int类型
        int[] arr = {4,7,3,9,0,6,7,8};
        //定义一个变量,,先将数组0索引的值赋值给这个变量
        int max = arr[0];
        //遍历数组,并与max进行比较
        for(int i=1;i<arr.length;i++) {
            if(max < arr[i]) {
                max = arr[i];
            }
        }
        System.out.println("数组中的最大值为:"+max);
    }

}
运行结果

代码解释

  首先定义一个数组,并对其中元素赋值。然后定义一个变量max,并将数组的0索引赋值给这个变量。接下来遍历数组,并使之与max进行比较,如果比max的值大,则将值赋值给max。最后输出max的值。
  有一处细节部分,

for(int i=1;i<arr.length;i++)

此处i直接从一开始,因为max本身就已经时数组0索引的值了,没必要与自己比较,可以节省资源。

延伸

  结合前面学的东西,延伸一下,做一个手动输入每个数组元素,再进行比较最大值。(只是个例子,其实鸡肋的很...)

import java.util.Scanner;

/*
 * 计算数组中的最大值
 */
public class ArrayDemo {

    public static void main(String[] args) {
        //定义数组,int类型
//      int[] arr = {4,7,3,9,0,6,7,8};

        //新建长度为5的数组
        int[] arr = new int[5];
        Scanner sc = new Scanner(System.in);

        //遍历数组,并进行赋值
        for(int j=0;j<arr.length;j++) {
            System.out.println("请输入第"+j+"索引的值(整数):");
            arr[j] = sc.nextInt();
        }
        //定义一个变量,,先将数组0索引的值赋值给这个变量
        int max = arr[0];
        //遍历数组,并与max进行比较
        for(int i=1;i<arr.length;i++) {
            if(max < arr[i]) {
                max = arr[i];
            }
        }
        System.out.println("数组中的最大值为:"+max);
    }

}
运行结果

小结

  个人认为数组用的最多的就是数组的遍历,理解了这个for语句,可以灵活运用到很多的地方。


道也者,不可须臾离者也,可离非道也。