A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 李震 初级黑马   /  2012-8-3 13:06  /  1717 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

当定义一个数组时,数组内的元素在内存中的储存方式是怎样的?是指针连接的随机储存方式,还是顺序储存?

评分

参与人数 1技术分 +1 收起 理由
杨志 + 1 继续加油!

查看全部评分

4 个回复

倒序浏览
数组自己就是一个一种数据结构啊,当数组被定义了后,就会在内存空间中开辟出一块有序的内存块,用来存放数组元素。
因为需要开辟空间,所以长度在定义的时候就要用参数的形式告诉jvm。
定义好了,然后在堆内存中也就相应的空间,放着数组了。
不过数组是引用数据类型,所以,当你在使用的时候,
其实是用的栈内存中一个数组变量指向数组地址。再通过角标,找到指定的元素。
回复 使用道具 举报
数组是一个引用数据类型,
在内存中建立后,会先在栈内存中建立一个引用变量,然后在堆内存中存储 数组实体,
由引用变量 对应数组中元素 的地址。过程类似于指针,对于一维数组没必要考虑是否
顺序存储,对于二维数组,我个人感觉应该和C语言差不多 都是顺序存储。
回复 使用道具 举报
数组是在程序设计中,为了处理方便, 把具有相同类型的若干变量按有序的形式组织起来的一种形式,
二维数组同一维数组一样,都是顺序存储的,下标是指首地址的偏移量,二维数组可以看作是数组的数组。
希望能帮助你
回复 使用道具 举报
谢谢,大家 我明白了
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马