Java基础学习——数组的基础知识

数组的概述

  1. 数组:是多个相同类型数据一定顺序排列的集合,并使用一个名字命名,并通过编号的方式对这些数据进行统一管理

  2. 数组的相关概念:数组名、元素、角标/下标/索引、数组的长度(数组中元素的个数)

  3. 数组的特点:

    • 数组是有序排列的

    • 数组本身是引用数据类型,但数组的元素可以是任何数据类型(基本数据类型、引用数据类型)

    • 数组在内存中开辟的是一块连续的空间

    • 数组的长度一旦确定,就不能修改

  4. 数组的分类:

    • 按维数分类:一维、二维、三维······

    • 按数据元素数据类型分类:基本数据类型元素的数组、引用数据类型的数组

一维数组的使用:

  1. 数组的声明和初始化

    • 静态初始化:数组的声明和初始化赋值同时进行

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

    • 动态初始化:数组的声明和初始化赋值分开进行

      String[] names = new String[5];

一旦初始化完成,数组的长度就确定下来了

  1. 如何调用数组的指定位置的元素

    数组的角标是从0开始到数组的长度-1结束。

    names[0]——表示第一个元素

  2. 如何让获取数组的长度

    使用数组的属性:lengh

    eg:names.length

  3. 如何遍历数组的元素

    借助循环结构

    for(int i=0;i<names.length;i++) {
                System.out.println(names[i]);
            }

  4. 数组元素的默认初始化值

    • 数组元素是整型:0

    • 数组元素是浮点型:0.0

    • 数组元素是boolean型:false

    • 数组元素是char型:0或'\u0000',而非'0'

    • 数组元素是引用数据类型:null

  5. 数组的内存解析

二维数组的使用

二维数组:一维数组的元素是另一个一维数组

  1. 二维数组的声明和初始化

    静态初始化:

    int[][] arr1 = new int[][]{{1,2,3},{6,8},{3,6,8,9}};

    动态初始化:

    String[][] arr2 = new String[4][3];

    String[][] arr3 = new String[4][];

    其他也正确的写法

    String[] arr4[]String arr[][]【[]的位置放在类型或变量后面都可以,一维数组同】

    int[][] arr1 = {{1,2,3},{6,8},{3,6,8,9}};【类型推断】

  2. 如何调用二维数组的指定位置的元素

    System.out.println(arr1[2][0]);//3
    ​
    System.out.println(arr2[3][1]);//null
    ​
    //arr3[2] = new String[4];
    System.out.println(arr3[2][3]);//报错,需先赋值

  3. 如何让获取二维数组的长度

    属性:length

  4. 如何遍历二维数组的元素

    嵌套循环

    for(int i=0;i<arr.length;i++){
        for(int j=0;j<arr[i].length;j++){
            System.out.println(arr[i][j]);
        }
    }

  5. 二维数组元素的默认初始化值

    规定:二维数组分为外层数组元素,内层数组元素 int[][] arr = new int[3][4]

    外层数组元素,arr[0],arr[1] 内层数组元素,arr[0][0],arr[1][2]

    ①外层数组元素的默认初始化值为地址值;内层数组元素的默认初始值,同一维数组,与数据类型有关

    ②特殊的,针对String[][] arr3 = new String[4][];定义方式,外层的默认初始值:null;内层数组元素不能调用,否则报错。

  6. 二维数组的内存解析

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

Etlevent

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

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

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

打赏作者

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

抵扣说明:

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

余额充值