06-从零玩转JavaWeb-数组在内存当中的存放形式

时间:2021-12-04 13:19:15

配套视频:数组内存分析

一、JVM的内存划分

  想要了解数组的内存存储,先要了解JVM的整体内存划分,详细参见第04JVM内存详解

  06-从零玩转JavaWeb-数组在内存当中的存放形式

二、数组在JVM当中的存储详解

       假如我们有如下代码:

       06-从零玩转JavaWeb-数组在内存当中的存放形式

        上面代码当中,创建数组的过程我们可以把它分为三步:

  1.声明int类型的数组ages int [] ages;

  2.在堆中初始化数组 new int[]{10,20,30};

  3.把被初始数组的地址赋值给ages变量

  

  06-从零玩转JavaWeb-数组在内存当中的存放形式

 

  上图是 int[] ages = new int[]{} 在内存当中的体现形式 

  可以看到ages的值其实是堆当中数组的地址

  所以你去打印数组的时候会发现,打印的是一个地址,而不是数组当中的值。

  

  当执行ages = new int[]{40,50,60} 
  在堆中初始化了一个新的数组
  把数组的地址重新赋值给了ages

  06-从零玩转JavaWeb-数组在内存当中的存放形式

   06-从零玩转JavaWeb-数组在内存当中的存放形式

关注以下微信号“码蚁小强

第一时间获取《从零玩转JavaWeb+项目实战》最新更新视频及下载地址

06-从零玩转JavaWeb-数组在内存当中的存放形式

上课“代码+软件+Xmind笔记”在“码蚁Java学习交流群:625973026“文件共享当中

 网易云:点击在线观看  建议倍速观看