欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

1.Java数组的定义与使用

程序员文章站 2022-04-03 08:51:46
...

Java数组

一、数组的概述

/**
1、数组概述
    A、数组:存储同一种数据类型多个元素的容器。

2、定义格式
    A、数据类型[] 数组名;
    B、数据类型    数组名[];

3、数组举例
    A、int[] a;
    B、imt a[];

 */

//包名
package com.arr;

//创建类
public class Demo1 {
    // 创建主方法
    public static void main(String[] args) {
        // 数组格式举例
        int[] a;
        int b[];
    }
}

二、数组的初始化之动态初始化

/**
    1、数组的初始化概述
        A、Java中的数组必须先初始化才可以使用。
        B、初始化:就是为数组中的数组元素分配空间,并为每个数组元素赋值。

    2、数组初始化之动态初始化
        A、动态初始化:初始化时只指定数组长度,由系统为数组分配初始值。
            1.格式:数据类型[] 数组名 = new 数据类型[数组长度]

        B、数组的格式分析
            1.数组长度:就是数组中元素的个数
            2.数据类型:就是数组中数据的类型
            3.new :为数组分配(开辟)内存空间
            4.[]  :说明这是一个数组。

        C、注意事项
            1、数组中的每个元素都是有编号的,并且是从0开始,最大编号是数组长度的-1。
            2、数组中编号称之为索引,通过数组名访问数据的格式是:数组名[索引];
 */

//包名
package com.arr;

//创建类
public class Demo2 {
    // 创建主方法
    public static void main(String[] args) {
        // 创建动态数组:只分配数组的长度,值由系统自动分配。
        int[] arr = new int[2];
        // 打印数组地址值:[aaa@qq.com
        System.out.println(arr);
        // 访问数组中的元素:每个元素是从0开始
        System.out.println(arr[0]);
        System.out.println(arr[1]);

    }
}

三、Java的内存分配与数组图解

1.Java数组的定义与使用

四、Java数组内存代码与图解

/**
    1、Java数组中的内存图解
        A、数组内存图解之一个数组:代码+图解
        C、数组内存图解之两个数组:代码+图解

 */
//包名
package com.arr;

//创建类
public class Demo3 {
    // 创建主方法
    public static void main(String[] args) {
        /**
            内存图解之一个数组
         */
        // 创建数组
        int[] arr = new int[3];
        // 打印数组地址值:[aaa@qq.com
        System.out.println(arr);
        // 打印数组的元素:默认值都是0
        System.out.println(arr[0]);
        System.out.println(arr[1]);
        System.out.println(arr[2]);
        // 给数组中元素赋值
        arr[0] = 1;
        arr[1] = 10;
        arr[2] = 20;
        // 重新打印
        System.out.println(arr[0]);// 1
        System.out.println(arr[1]);// 10
        System.out.println(arr[2]);// 20
    }
}

1.Java数组的定义与使用

五、数组指向另一个数组图解

//包名
package com.arr;

//创建类
public class Demo4 {
    // 创建主方法
    public static void main(String[] args) {
        /**
             三个数组(两个栈变量指向同一个堆内存)
         */
        // 创建数组
        int[] arr = new int[3];
        // 打印数组的地址值[aaa@qq.com
        System.out.println(arr);
        // 打印数组中的元素
        System.out.println(arr[0]);
        System.out.println(arr[1]);
        System.out.println(arr[2]);

        // 将arr2数组指向arr数组。
        int[] arr2 = arr;
        // 打印数组的地址值[aaa@qq.com 地址值与arr一样、
        System.out.println(arr2);
        // 给数组赋值
        arr2[0] = 1;
        arr2[1] = 3;
        arr2[2] = 5;
        // 重新打印
        System.out.println(arr2[0]);
        System.out.println(arr2[1]);
        System.out.println(arr2[2]);
    }
}

1.Java数组的定义与使用

六、数组的静初始化与使用

/**
            A、静态数组的创建与使用
                格式:数据类型[] 数组名 = {元素1,元素2,...};
            B、举例    
                复杂版:int[] arr = new int{1,2,2};
                简化版:int[] arr = {1,4,2};

*/
//包名
package com.arr;

//类名
public class Demo5 {
    // 主方法
    public static void main(String[] args) {
        // 创建静态数组.
        int[] arr = { 1, 2, 3 };
        // 打印数组名
        System.out.println(arr);
        // 打印数组元素
        System.out.println(arr[0]);
        System.out.println(arr[1]);
        System.out.println(arr[2]);
    }
}

七、操作数组中常出的两个问题

//包名
package com.arr;

//类名
public class Demo6 {
    // 主方法
    public static void main(String[] args) {

        /**
            A、操作数组中常见的问题。
                1、数组索引越界异常
                    java.lang.ArrayIndexOutOfBoundsException
                2、数组空指针异常
                    java.lang.NullPointerException
         */

        int[] arr = { 13, 4, 5 };
        System.out.println(arr[0]);
        System.out.println(arr[1]);
        System.out.println(arr[2]);
        // System.out.println(arr[3]);//访问了超出数组中的长度

        arr = null;// 给数组赋予空常量null。
        // System.out.println(arr[0]); //数组以及赋予了空的值,再去访问它肯定出问题
    }
}
相关标签: Java数组