java二维数组分组求和,这不是关键主要输出是不要遍历输出,要怎么单个输出每个组的和,就是输出时说出三种家电各是多少,怎么输出?
某门店销售小家电,其中第一季度每个月电饭煲的销售额为{5321,7632,4231},空气炸锅的销售额为{4325,6421,4453},榨汁机的销售额为{3214,3532,4352},求第一季度这三种小家电的销售额分别为多少?用Java二位数组写出来
回答:
写个大概的思路,盲打多少会有点错误。
arr2 = [{5321,7632,4231},{4325,6421,4453},{3214,3532,4352}]Map<String, Object> map = new HashMap<>();
for(int i = 0 ;i<arr2.length;i++){
String index = 0;
var sum = 0;
for(int j = 0 ;j<arr2[i].length ;j++){
sum += arr2[i][i];
}
map.put(index,sum);
}
回答:
按照你的描述,这个二维数组第一维是三种小家电,第二维是每种小家家第一个季度三个月的销售额。要达到统计的目的,需要遍历累加。遍历二维数组,一般使用两个循环
第一个循环,遍历第一维,即三个小家电的数据。内嵌第二个循环,遍历第二维,即三个月的数据。由于需要累加,而且累加的值是第二维要遍历出来的每一个数值,所以需要在内循环之前初始化一个保存累加和的变量,在内循环中对这个变量进行累加,在内循环完成的时候使用这个变量。
这里说到的使用,可以是直接输出,也可以是放到一个容器中(列表或者数组)。
根据上面的描述,代码应该是写得出来了。下面给你一个用 stream 实现的方法(不太基础,仅供参考)
package playground;import java.util.Arrays;
public class Solution {
public static void main(String[] args) {
int[][] data = { { 5321, 7632, 4231 }, { 4325, 6421, 4453 }, { 3214, 3532, 4352 } };
Arrays.stream(data)
.mapToInt(arr -> Arrays.stream(arr).sum())
.forEach(System.out::println);
}
}
以上是 java二维数组分组求和,这不是关键主要输出是不要遍历输出,要怎么单个输出每个组的和,就是输出时说出三种家电各是多少,怎么输出? 的全部内容, 来源链接: utcz.com/p/944865.html