如何计算List<ChickenByWeight>中所有鸡的平均重量?
计算鸡群平均重量的实现方法
要计算所有鸡的平均重量,核心逻辑是总重量除以总数量:
- 总重量 = 每组鸡的重量 × 该组鸡的数量,累加所有组的结果
- 总数量 = 累加所有组的鸡的数量
同时需要处理边界情况:如果列表为空或总数量为0,直接返回0.0避免除以零错误。
实现代码
double averageChickenWeight(List<ChickenByWeight> chickenByWeight) { if (chickenByWeight.isEmpty) return 0.0; int totalWeight = 0; int totalCount = 0; for (final group in chickenByWeight) { totalWeight += group.weight * group.count; totalCount += group.count; } return totalCount == 0 ? 0.0 : totalWeight / totalCount; }
代码说明
- 先判断列表是否为空,为空直接返回0.0
- 遍历每一组鸡,分别累加总重量和总数量
- 最后判断总数量是否为0(避免所有组count都是0的极端情况),非0则返回总重量除以总数量的结果(自动转为double类型)
内容的提问来源于stack exchange,提问作者Sunshine
相关产品推荐
相关产品推荐

