【发布时间】:2016-10-08 17:40:48
【问题描述】:
我是代码初学者,如果我的数据结构和逻辑实践不佳,我深表歉意。我需要打印出每种产品的总销售额。例如,对于“mac”,它将被标记为类别 0,而“iphone”将被标记为类别 1。
我无法将类别的索引位置与每个类别的总和进行匹配。我真的只需要某种 for 循环。我意识到我可以制作 2D 数组以及使用 intstream,但我还没有学会它。这只是代码的一部分,所以使用二维数组确实会使事情复杂化。
现在,我正在尝试以下方法:
public static int[] totalSale( int[] mac, int[] iphone, int[] ipad, int[] ipod ){
int[] totalSale = {0,0,0,0};
int sum = 0;
for (int i : mac) {
sum += i;
}
for (int i = 0; i < totalSale.length; i++) {
System.out.println("Total sale for category " + i + ": $" + sum);
}
return totalSale;
}
【问题讨论】:
-
您似乎假设所有数组
int[] mac, int[] iphone, int[] ipad, int[] ipod具有相同的长度。是这样吗?它们代表什么? -
@Alain 对此感到抱歉。我添加了示例输入值。但是数组应该代表列出的日期的成本列表
-
当您运行第一个版本时遇到什么错误?
-
它打印: 类别 0 的总销售额:$34500 类别 1 的总销售额:$34500 类别 2 的总销售额:$34500 类别 3 的总销售额:$34500 所以我猜它只打印我输入的内容mac,但我不确定如何使其也适用于其他数组。
-
首先我的意思是最早的。你列出的第二个。我觉得很好。