java基础学习之------数组篇(定义,访问,存储)

数组:具有明确长度及容量的   用于存储某种数据类型变量的  容器

①数组的定义

动态初始化:

数据类型[]   数组名   =  new   数据类型[int  num];   int num 为具体值  代表数组长度及容量

静态初始化:

数据类型[]  数组名 = new 数据类型[]{多个该数据类型的变量,之间用英文,隔开};

new 数据类型[]   可以省略  系统默认

public class Test {
    public static void main(String[] args) {

        int[] arr1 = new int[10];

        int[] arr2 = new int[]{1, 2, 3, 4, 5};

        int[] arr3 = {6, 7, 8, 9, 10};
        
    }
}

②数组的访问   

通过索引   注意从0开始  到 数组名.length -1  不在范围内会抛出异常  数组下标越界

如果 arr = null     通过下标访问会抛出异常   空指针异常

public class Test {
    public static void main(String[] args) {
        int[] arr = new int[]{1, 2, 3, 4, 5, 6, 7, 8, 9};

        //arr[num]   num 即为索引  从0开始  到数组长度减一
        //数组名.length   即为数组长度
        System.out.println(arr[0]);//1   arr[0]
        System.out.println(arr[8]);//9   arr[arr.length - 1]
        //System.out.println(arr[9]);//ArrayIndexOutOfBoundsException
        //arr = null;
        //System.out.println(arr[0]);//NullPointerException
    }
}

③内存空间分析

④多维数组(二维数组)     一维数组内元素还是一维数组 

动态初始化   int[][]   arr = new int[num1][num2];   

静态初始化    int[][]   arr = {{1,2,3,4,5},{6},{7,8,9}};

num1表示该二维数组含num1个一维数组   

num2 表示每个一维数组长度    num2  并非统一   每个一维数组的长度不固定

        int[][] arr1 = new int[3][3];

        int[][] arr2 = new int[][]{{1,2,3},{4,5,6},{7,8,9}};

        int[][] arr3 = {{1,2,3,4,5},{6},{7,8,9}};

 二位数组的访问依旧是通过下标     只不过需要两个中括号内都符合0~长度减一

public class Test {
    public static void main(String[] args) {
        int[][] arr1 = new int[3][3];

        int[][] arr2 = new int[][]{{1,2,3},{4,5,6},{7,8,9}};

        int[][] arr3 = {{1,2,3,4,5},{6},{7,8,9}};

        arr1[1][1] = 1;  //通过下标赋值

        System.out.println(arr1[0])//输出的是地址值

        System.out.println(arr2[2][2]);

        System.out.println(arr3[2][5]);//数组下标越界
        
    }
}

     

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

看见我请叫我滚去学Java

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值