【发布时间】:2014-02-09 01:04:20
【问题描述】:
最近我们学习了二维数组并解决了计算其中所有元素的平均值的任务。我的代码是这样的:
int a[][] = {
{1, 2, 3, 4, 5},
{6, 4, 2, 7},
{3, 6},
{2, 6, 8},
};
int sum=0, amount=0;
for (int[] row : a)
for (int val : row) {
sum += val; amount += 1;
}
return sum / (double) amount;
问题是我不喜欢计算数组中元素数量的方式。 我尝试使用 size(),但它不起作用,尝试使用 Array 和 Arrays 类,但两者都无法检索某行中的行数或元素数,就像 .length 属性。
问题:是否有任何方法可以在不使用循环的情况下从二维或更多维矩阵中检索元素数量?
【问题讨论】:
-
由于第一个数组中的每个数组可能有不同的大小,我认为你需要一个循环。
-
我觉得结尾很简洁。
-
我想也许我在学习时错过了一些东西。