Point04(java--数组)

102 阅读2分钟

在 Java 中,数组是一种基本的数据结构,用于存储固定大小的相同类型元素。Java 数组可以是一维的、多维的,或者甚至是不规则的(即每一行的长度不同)。下面是一些关于 Java 数组的基本概念和常见操作的介绍。

一、数组的声明

数组的声明格式:

数据类型[] 数组名称

数据类型 数组名称[]

例如:

public class Arr {
    public static void main(String[] args){
        int[] numberArr1;
        int numberArr2[];
    }
}

通常推荐使用第一种写法;

二、开辟存储空概念

数组需要在声明后为其开辟空间俩存储数据

public class Arr {
    public static void main(String[] args){
        int[] numArr;
        numArr = new int[10];//允许存储10个int类型的数据;
    }
}
三、数组赋值

数组赋值通过指定下标给数组中的元素进行赋值(数组的下标从0开始)

public class Arr {
    public static void main(String[] args){
        int[] numArr;
        numArr = new int[10];//允许存储10个int类型的数据;
        numArr[0] = 0;
        numArr[1] = 1;
        System.out.println(Arrays.toString(numArr));
    }
}
//输出:[0, 1, 0, 0, 0, 0, 0, 0, 0, 0]

当然,在大部分情况下,事先我们并不知道数组所需空间大小;所以可用直接进行赋值。(注意:在java中数组的赋值使用{},和js中使用的[]不同):

public class Arr {
    public static void main(String[] args){
        int[] numArr;
        numArr=new int[] {1,2,4,5};
        System.out.println(Arrays.toString(numArr));
    }
}
//输出:[1, 2, 4, 5]

我们可以合并声明、赋值两步,在声明后直接进行赋值(可以进行简写,进一步简化)

public class Arr {
    public static void main(String[] args){
        int[] numArr = new int[] {3,4,5,6};
        //简化写法
        // int[] numArr = {3,4,5,6};
        System.out.println(Arrays.toString(numArr));
    }
}
//输出:[3, 4, 5, 6]
四、数组属性

数组作为数据结构存在一些特殊的属性

  1. 数组长度:length

数组可以使用数组名.length来获取数组的长度

public class Arr {
    public static void main(String[] args){
        int[] numArr = {3,4,5,6};
        System.out.println(numArr.length);
    }
}
//输出:4
  1. 数组中存储的其实是数据的地址
public class Arr {
    public static void main(String[] args){
        int[] numArr = {3,4,5,6};
        System.out.println(numArr);
    }
}
//输出:[I@7ef20235

至此你已经学会了如何声明数组,但是我们需要先学习循环语句然后再学习对数组的一些操作!

扩展:二维数组

所谓二维数组:就是数组的每一项也是一个数组,这样需要定位一个元素就需要两个维度来表示;首先我们来看看二位数组的声明和赋值:


public class Arr {
    public static void main(String[] args){
        int[][] TDArr = {{1,2,3,4},{5,6,7,8},{9,0}};
        System.out.println(Arrays.toString(TDArr[0]));//输出:[1, 2, 3, 4]
        System.out.println(TDArr[2][0]);//输出:9
    }
}

同理可以有多维数组!