一维二维数组占内存问题

enlich enlich 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
int num1 = 1024 * 1024 * 2; 						// 数组中元素的个数
int[] arr1 = new int[num1]; // 创建int型一维数组
for (int i = 0; i < arr1.length; i++) {
arr1[i] = i; // 为数组元素赋值
}
// 获得占用内存总数,并将单位转换为M
long memory1 = Runtime.getRuntime().totalMemory() / 1024 / 1024;
System.out.println("占用内存总量为:" + memory1);
int num2 = 1024 * 1024; // 数组中元素的个数
int[][] arr2 = new int[num2][2]; // 创建int型二维数组
for (int i = 0; i < arr2.length; i++) {
arr2[i][0] = i; // 为数组元素赋值
arr2[i][1] = i; // 为数组元素赋值
}
// 获得占用内存总数,并将单位转换为M
long memory2 = Runtime.getRuntime().totalMemory() / 1024 / 1024;
System.out.println("占用内存总量为:" + memory2);



这是书上的代码,我本来以为自己写错了,可是运行了书上的之后,显示占用内存还是相同,都为123,是因为什么呢?
...全文

相关推荐

C语言编程 C语言程序设计 C语言入门教程 第6章 利用数组处理批量数据 共94页.ppt

本章主要讲解了三种类型的数组:一维数组、二维数组以及字符数组。一、一维数组1. 定义一维数组:一维数组是最基础的数组形式,它由一系列相同类型的数据组成。

passionSnail

第5章 数组与字符串(第7版).pptx

* 数组和对象在没有引用变量指向它时,就会变成垃圾,不被使用,但占内存,在随后不确定的时间释放。

编程指南针

在C语言中利用动态结构数组处理学生成绩表.pdf

他们首先指出了C语言中定义定长数组所存在的问题,然后介绍了如何使用指针来处理数组大小预先未知的情况。文档还讨论了动态数组的创建与管理,并且提供了如何利用指针来动态创建一维和二维数组的例子。

数据资源

C++习题 6数组与指针

- **二维数组**:三维数组的元素实际上是一个二维数组。**5.1.3 多维数组在内存中的存储:**- **一维化**:由于计算机内存是一维编址的,多维数组在内存中的存储必须转化为一维的方式。

skypiea9

2023年c语言二级考试重点和知识点.doc

在数组章节,考生需要掌握一维数组和二维数组的定义、初始化和使用,字符数组与字符串的处理也是本章节的重点。了解数组和字符串在内存中的存储机制是理解这些内容的基础。函数是C语言中实现模块化编程的重要机制。

可爱豆豆乐
评论 3
收藏 已收藏
分享
返回顶部
enlich
Java SE 62,620 成员 307,251 内容