作者hardcover (如是如是)
看板java
标题Re: [问题] 二维阵列是连续的吗?
时间Tue Jun 23 20:40:04 2009
刚开始看java。
我记得在 c里是连续。
之前看同学有一本java 资料结构的书写算位置的公式是连续的?
就是那个等差公式。所以,我以为如此。
後来看到同学写矩阵运算的公式,说是二维要access两次,所以要写成一维;
不过根据公式,不是只有一次吗?而且 int[][] x = new int[2][4] 感觉就只有
return 一个pointer。现在才知memeory allocation在java不是连续。
thanks
--
问我同学? 他在巨匠花了快20万,结果...一问三不知。
二维要写成一维是某个老师为了要教他写程式给他的homework
※ 引述《FHTsai (无法理解的爱)》之铭言:
: ※ 引述《jtmh ()》之铭言:
: : Java 中的二维阵列都是「阵列的阵列」,
: : 也就是第二种写法的形式,
: : 而且第一种写法在行为上其实也等效於第二种 [注],
: : 也因为这样,
: : 二维阵列的记忆体并不会是全部连续的。
: : 注:详见 JLS 说明 - http://tinyurl.com/l8p8k8
: 的确,本质上二维阵列是一维阵列物件的集合,而既然是物件的集合,
: 便没办法保证在记忆体中是连续的排在一起...
: 只能说,这些一维阵列的参照是连续的放在记忆体中罢了
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.114.203.67