Java基础(数组)

2019-04-03  本文已影响0人  F_WJ
image.png

容器下的人儿呀, 你为何如此不变

数组

语法: 
    数组元素类型[] 数组名;
定义:
    存放相同类型的多个常量, 并且有序的

初始化

用意:
    定义数组之和, 是不能直接去使用, 因为没有初始化, 初始化才表示在堆内存分配了存储空间

静态初始化

    语法:
        数组元素类型[] 数组名 = new 数组元素类型[]{ 元素1, 元素2, 元素3.....}
    定义:
        直接为每一个数组元素设置初始值,  而数组的长度由JVM来决定

动态初始化

    语法:
        数组元素类型[] 数组名 = new 数组元素类型[length(数组长度)]
    元素初始化默认值:
        byte, short, int, long:  0
        float, double:  0.0
        char:  一个空字符(空格), 即'\u0000'
        引用数据类型:  null(表示不引用任何对象)
    注意: 
        数组一旦初始化成功, 数组的长度是固定的, 不能更改, 除非重新初始化

数组操作

1.获取数组的长度
    语法:
        int size = 数组名.length
    定义:
        数组有几个元素

2.获取元素值
    语法:
        数组元素类型 变量名 = 数组名[index];
    注意:
        index(索引): 也可以称为脚标, 从0开始, 索引的范围是[0, 数组名.length - 1]

3.设置元素值
    语法:
        数组名[index] = 值;
    定义:
        把某个值位置给哪一个数组值的一个位置

4.迭代数组
    用意:
        获取数组的每一个元素
    1. for循环
    2. for-each(for增强版, 其实底层依然使用的是for循环+索引的方式去获取元素)
        语法:
            for(元素类型 变量名 : 数组名 ){ 循环体 }
    两种方法使用情况: 
        如果仅仅是需要操作元素, 首选for-each; 如果需要操作数组的索引, 选用for

常见异常

NullPointerException: 空指针异常(操作了一个引用为空的数组)
ArrayIndexOutBoundsException: 数组索引越界异常(操作数组的索引不在[0, 数组长度-1]范围之内

二维数组

静态初始化语法:
    数组元素类型[][] 数组名 = new 数组元素类型[][]{ 数组1, 数组2, 数组3.....}

动态初始化语法:
    数组元素类型[][] 数组名 = new 数组元素类型[x][y]

注意:
    二维数组中的元素类型是一维数组, 把数组元素类型[]看成一个整体, 表示数据类型
上一篇下一篇

猜你喜欢

热点阅读