2020-06-17

访问数组元素进行赋值        代码:/*

* 使用动态初始化数组的时候,其中的元素将自动拥有一个默认值。规则如下:

* 如果是整数类型,那么默认为0;* 如果是浮点类型,那么默认为0.0;* 如果是字符类型,那么默认为'\u0000';* 如果是布尔类型,那么默认为false;* 如果是引用类型,那么默认为null。*

* 注意事项:

* 静态初始化其实也有默认值的过程,只不过系统自动马上将默认值替换成为了大括号当中的具体数值。* */

public class Demo05ArrayUse {

public static void main(String[] args) {

// 动态初始化一个数组

        int[] array =new int[3];

        System.out.println(array); // 内存地址值

        System.out.println(array[0]); // 0

        System.out.println(array[1]); // 0

        System.out.println(array[2]); // 0

        System.out.println("======");

        // 将数据123赋值交给数组array当中的1号元素

        array[1] =123;

        System.out.println(array[0]); // 0

        System.out.println(array[1]); // 123

        System.out.println(array[2]); // 0

    }

}

Java中的内存划分            

划分图

一个数组的内容图            代码:public class Demo05ArrayUse {

public static void main(String[] args) {

// 动态初始化一个数组

        int[] arrayA =new int[3];

        System.out.println(arrayA); // 内存地址值

        System.out.println(arrayA[0]); // 0

        System.out.println(arrayA[1]); // 0

        System.out.println(arrayA[2]); // 0

        System.out.println("======");

        // 将数据123赋值交给数组array当中的1号元素

        arrayA[1] =10;

        arrayA[2] =20;

        System.out.println(arrayA); // 内存地址值

        System.out.println(arrayA[0]); // 0

        System.out.println(arrayA[1]); // 123

        System.out.println(arrayA[2]); // 0

        System.out.println("======");

}

}

内容图

两个数组的内存图            代码:public class Demo05ArrayUse {

public static void main(String[] args) {

// 动态初始化一个数组

        int[] arrayA =new int[3];

        System.out.println(arrayA); // 内存地址值

        System.out.println(arrayA[0]); // 0

        System.out.println(arrayA[1]); // 0

        System.out.println(arrayA[2]); // 0

        System.out.println("======");

        // 将数据123赋值交给数组array当中的1号元素

        arrayA[1] =10;

        arrayA[2] =20;

        System.out.println(arrayA); // 内存地址值

        System.out.println(arrayA[0]); // 0

        System.out.println(arrayA[1]); // 123

        System.out.println(arrayA[2]); // 0

        System.out.println("======");

        int[] arrayB =new int[3];

        System.out.println(arrayB); // 内存地址值

        System.out.println(arrayB[0]); // 0

        System.out.println(arrayB[1]); // 0

        System.out.println(arrayB[2]); // 0

        System.out.println("======");

        arrayB[1] =100;

        arrayB[2] =200;

        System.out.println(arrayB); // 内存地址值

        System.out.println(arrayB[0]); // 0

        System.out.println(arrayB[1]); // 10

        System.out.println(arrayB[2]); // 20

    }

}

内存图

两个引用指向同一个数组        代码:public class Demo05ArrayUse {

public static void main(String[] args) {

// 动态初始化一个数组

        int[] arrayA =new int[3];

        System.out.println(arrayA); // 内存地址值

        System.out.println(arrayA[0]); // 0

        System.out.println(arrayA[1]); // 0

        System.out.println(arrayA[2]); // 0

        System.out.println("======");

        // 将数据123赋值交给数组array当中的1号元素

        arrayA[1] =10;

        arrayA[2] =20;

        System.out.println(arrayA); // 内存地址值

        System.out.println(arrayA[0]); // 0

        System.out.println(arrayA[1]); // 123

        System.out.println(arrayA[2]); // 0

        System.out.println("======");

        int[] arrayB = arrayA;

        System.out.println(arrayB); // 内存地址值

        System.out.println(arrayB[0]); // 0

        System.out.println(arrayB[1]); // 10

        System.out.println(arrayB[2]); // 20

        System.out.println("======");

        arrayB[1] =100;

        arrayB[2] =200;

        System.out.println(arrayB); // 内存地址值

        System.out.println(arrayB[0]); // 0

        System.out.println(arrayB[1]); // 10

        System.out.println(arrayB[2]); // 20

    }

}


内存图
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。