dart - 如何从Dart中的列表中找到最小值和最大值
Posted Lucklyの博客
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了dart - 如何从Dart中的列表中找到最小值和最大值相关的知识,希望对你有一定的参考价值。
dart - 如何从Dart中的列表中找到最小值和最大值?
我已经尝试了以下代码段。但是它将引发有关类型转换的错误。因为列表具有整数和 double 值的组合。但是 **list.reduce(min)**返回唯一的整数值。因此,您能为这些人提供解决方案吗?提前致谢。
注意-但是,我从用户那里获得了唯一的动态列表。
final List<dynamic> y = [12, 12, 23.5, 2, 19, 1, 23, 16, 29.7, 32, 45, 68, 23, 21];
List<num> yValues = y;
num yMin = yValues.reduce(min);
num yMax = yValues.reduce(max);
最佳答案
您正在编写List的类型为List<dynamic>
。由于min
和max
仅适用于num
类型,因此我们需要将列表中的每个元素cast
转换为num
,如下所示:
import 'dart:math';
void main() {
final List<dynamic> y = <dynamic>[12, 12, 23.5, 2, 19, 1, 23, 16, 29.7, 32, 45, 68, 23, 21];
final yMin = y.cast<num>().reduce(min);
final yMax = y.cast<num>().reduce(max);
print(yMin); // 1
print(yMax); // 68
以上是关于dart - 如何从Dart中的列表中找到最小值和最大值的主要内容,如果未能解决你的问题,请参考以下文章