数组

1、概念:
用于存储多个类型相同数据的容器,本质就是一块连续的内存空间。
注意:数组的长度是不可变的,必须在声明的时候指明数组的长度。
2、语法
(1)声明语法
数据类型[] 数组名;
数据类型:可以是基本数据类型也可以是引用数据类型。
数据类型[]:又称之为数组类型。
数组名:就是标识符,要符合标识符命名规则和规范(可以参考变量命名规则)
其他少用声明语法:数据类型 数组名[];

(2)分配空间语法
数组名 = new 数据类型[数组长度];
数组名:数组名要与声明语法中数组名要一致。
new:在堆内存中创建数组空间
数据类型:数据类型要与声明语法中数据类型一致/兼容。
数组长度:数组空间大小,都是由1开始的正数。

public class Demo5_数组 {

    public static void main(String[] args) {

        //int arr[]; 少用
        int[] arr;
        //分配空间
        arr = new int[1];

        //二合一写法,边声明边分配空间
        int[] arr2 = new int[3];

    }
}

3、使用

数组变量
声明数组声明变量
分配空间变量赋值
使用数组使用变量

(1)赋值
1)静态赋值
数据类型[] 数组名 = new 数据类型[]{值1,值2,值3,…,值n};
数据类型[] 数组名 = {值1,值2,值3,…,值n}

public class Demo5_数组赋值 {

    public static void main(String[] args) {

        //int[] arr = new int[]{1, 2, 3};

        //int[] arr2 = {1, 2, 3};

        //注意1:静态赋值的区别
        //第一个静态赋值可以分步完成,先声明,再赋值。
        int[] arr;

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

        System.out.println(arr[0]);//1
        //第二个静态赋值不可以分步完成,边声明同时赋值。
        //int[] arr2;
        //arr2 = {1,2,3};

        //注意2:没有赋值的数组也有默认值,
        //整数类型(byte,short,int,long)默认值是0
        //浮点类型(float,double)默认值是0.0
        //字符类型(char)默认值是'\u0000'
        //布尔类型(boolean)默认值是 false
        //引用类型(String,自定义类)默认值是null
        int[] arr3 = new int[3];
        System.out.println(arr3[0]);//0
    }
}

2)动态赋值
数组名[下标] [= 值]
数组名:与已分配空间的数组名一致
下标:数组中存在下标(索引),下标取值由0开始,最大下标是数组长度-1
值:赋的值的类型必须与数组类型一致/兼容

public class Demo7_数组动态赋值 {

    public static void main(String[] args) {

        int[] arr = new int[3];

        //1、输出数组名
        System.out.println(arr);//[I@610455d6
        /* [I@610455d6
            [:代表数组
            I:代表数组类型 int
            @:分隔符
            610455d6:数组的内存空间地址
         */
        //2、获取数组中元素的值
        //0最小的下标
        System.out.println(arr[0]);//0
        System.out.println(arr[1]);//0
        //2最大的下标
        System.out.println(arr[2]);//0

        //3、对数组中元素赋值
        arr[0] = 10;
        System.out.println(arr[0]);//10


        //4、遍历数组,访问数组中所有元素
        //问题1:循环变量以0开始?循环变量还作为数组下标使用。数组下标由0开始。
        //问题2:循环条件是i<arr.length?arr.length用于获取数组长度,因为i代表下标,下标永远等于数组长度,只能小于它。
        //问题3:循环变量迭代部分是i++?访问下一个元素需要将下标+1

        System.out.println("数组长度:"+arr.length);//3
        for (int i = 0; i < arr.length; i++) {
            System.out.println(arr[i]);
        }
    }
}

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值