一维二维数组占内存问题
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. 定义一维数组:一维数组是最基础的数组形式,它由一系列相同类型的数据组成。
第5章 数组与字符串(第7版).pptx
* 数组和对象在没有引用变量指向它时,就会变成垃圾,不被使用,但占内存,在随后不确定的时间释放。
在C语言中利用动态结构数组处理学生成绩表.pdf
他们首先指出了C语言中定义定长数组所存在的问题,然后介绍了如何使用指针来处理数组大小预先未知的情况。文档还讨论了动态数组的创建与管理,并且提供了如何利用指针来动态创建一维和二维数组的例子。
C++习题 6数组与指针
- **二维数组**:三维数组的元素实际上是一个二维数组。**5.1.3 多维数组在内存中的存储:**- **一维化**:由于计算机内存是一维编址的,多维数组在内存中的存储必须转化为一维的方式。
2023年c语言二级考试重点和知识点.doc
在数组章节,考生需要掌握一维数组和二维数组的定义、初始化和使用,字符数组与字符串的处理也是本章节的重点。了解数组和字符串在内存中的存储机制是理解这些内容的基础。函数是C语言中实现模块化编程的重要机制。


Java SE
