数组的最小值大于其他值
本文关键字:其他 大于 最小值 数组 | 更新日期: 2023-09-27 17:51:11
我有以下数组:
float[] arr = { 0, 0.1f, 0, 0.1f, 0, 0.2f };
选择大于0或大于其他值的最小值的最优雅方法是什么?
我试过使用Min()
和Select...From...OrderBy...First()
,但直到现在都没有成功。
使用LINQ方法Where
过滤掉零值,然后使用LINQ法Min
检索结果集合的最低值。
arr.Where(f => f > 0).Min();
您可以使用Where
排除值,然后应用Min
:
array.Where(a => a > 1 && a < 10).Min();
尝试使用Where
过滤器;
基于谓词筛选值序列。
使用CCD_ 8方法后。
返回值序列中的最小值。
arr.Where(a => a > 0).Min();
这是一个DEMO
。
如果所有数据都小于您的"其他值",则所有当前答案都将得到异常。所以,如果这不是你想要的,那么在这种情况下,你会得到null
,代码是:
float[] arr = { 0, 0.1f, 0, 0.1f, 0, 0.2f };
var someOtherValue = 0;
var min = arr.Where(x => x > someOtherValue)
.Cast<float?>()
.Min();