dart - 如何从Dart中的列表中找到最小值和最大值
【摘要】
dart - 如何从Dart中的列表中找到最小值和最大值?
我已经尝试了以下代码段。但是它将引发有关类型转换的错误。因为列表具有整数和 double 值的组合。但是 **list.reduce(min)...
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);
- 1
- 2
- 3
- 4
最佳答案
您正在编写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
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
文章来源: jianguo.blog.csdn.net,作者:坚果前端の博客,版权归原作者所有,如需转载,请联系作者。
原文链接:jianguo.blog.csdn.net/article/details/120612713
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)