Java中的二维数组和c语言中的二维数组的区别
来源:互联网 发布:网络推广月工作计划 编辑:程序博客网 时间:2024/05/16 05:42
我觉得,JAVA的多维数组其实是数组包数组,即他们下一个数组是独立的,可以独立分配内存大小,跟C语言的数组不一样,C语言的数组无论维数是多少,他们每一维的内存大小都一样。
打个比方:
JAVA的三维数组
某公司有m个工厂,这个是第一维;
每个工厂有n个仓库,这个是第二维;
每个仓库有o件库存,这是第三维;
每个工厂的仓库数量都不同,每个仓库的库存数量又都不同。
通过三重循环,事实上可以从工厂依次遍历到仓库,再遍历到库存,从而统计出该公司所有的产品仓库。这就属于多维数组。
而C语言的三维数组
某公司有m个工厂,这个是第一维;
每个工厂有n个仓库,这个是第二维;
每个仓库有o件库存,这是第三维;
打个比方:
JAVA的三维数组
某公司有m个工厂,这个是第一维;
每个工厂有n个仓库,这个是第二维;
每个仓库有o件库存,这是第三维;
每个工厂的仓库数量都不同,每个仓库的库存数量又都不同。
通过三重循环,事实上可以从工厂依次遍历到仓库,再遍历到库存,从而统计出该公司所有的产品仓库。这就属于多维数组。
而C语言的三维数组
某公司有m个工厂,这个是第一维;
每个工厂有n个仓库,这个是第二维;
每个仓库有o件库存,这是第三维;
每个工厂的仓库数量相同,库存相同
在C/C++中,我们定义的变量所需的空间都是分配在栈上的,而new所需的空间都是分配在堆上的
在栈上的变量必须在代码中明确指出大小,所以在C/C++中定义数组必须指定大小
而JAVA中所有的变量都是引用,换个角度理解就是C++中的指针,所以在JAVA中的变量都是后期分配的
Java中可以这样定义数组:
int[][] arr = {{1,2,3},{4,5,6,7},{9}}; int [][] arr = {{1,2,3},{4,5,6,7},{9}}; int arr[][] = {{1,2,3},{4,5,6,7},{9}};
C语言只能这样定义数组: int arr[3]={1,2,3}; int arr2[]={1,2,3};
0 0
- Java中的二维数组和c语言中的二维数组的区别
- C语言中的二维数组
- java中的二维数组
- java中的二维数组
- Java 中的二维数组
- java中的二维数组
- Java 中的二维数组
- Java中的二维数组
- Java 中的二维数组
- JAVA中的二维数组
- Java中的二维数组
- Java中的二维数组
- java中的二维数组
- c#中的二维数组和交错数组的区别
- C语言二维数组中的指针问题
- 二维数组中的查找(C语言)
- C语言中的二维数组与指针
- 比较C语言与Java中的二维数组
- 找到一篇关于form以post、get方式提交数据中文乱码问题总结
- Web前后端分离:MVC简介
- android自定义View实现图片上传进度显示(仿手机QQ上传效果)
- 最近对IT行业收入的话题火起来了,我也来说说毕业三年混到20万的经历
- ios开发-Autolayout
- Java中的二维数组和c语言中的二维数组的区别
- OpenSessionInViewFilter-no session
- iOS NSNotificationCenter 使用姿势详解
- [leetcode] Contains Duplicate II
- iOS编程——预编译命令#include、#import和@class
- Mac 下配置Android NDK 环境变量[附带网盘NDK下载]
- 优化ITOO
- CSAPP 实验一lab1 fitsBits
- 开博第一篇! 定向:压缩感知。