如何从此示例中获取最小值和最大值
Public Class RowsFound
Property RowIndex As integer
Property Qty As Integer
Property LineValue As Double
End Class
Dim Test as new List(Of RowsFound)
基于最大LineValue和最小LineValue的RowIndex获取RowIndex的最佳方法是什么
我已经将此做为测试,但想看看是否有更好的方法可以做到这一点。
Dim MaxRow As Integer = 0
Dim MaxRowValue As Integer = 0
Dim MinRow As Integer = 999999
Dim MinRowValue As Integer = 999999
For Each MinMaxitem As RowsFound In ListOfRows
If MinMaxitem.LineValue < MinRowValue Then
MinRow = MinMaxitem.RowIndex
MinRowValue = MinMaxitem.LineValue
End If
If MinMaxitem.LineValue > MaxRowValue Then
MaxRow = MinMaxitem.RowIndex
MaxRowValue = MinMaxitem.LineValue
End If
Next
谢谢 :)
一种简单的方法是使用LINQ:
Public Class RowsFound
Property RowIndex As Integer
Property Qty As Integer
Property LineValue As Double
Public Sub New(i As Integer, q As Integer, v As Double)
Me.RowIndex = i
Me.Qty = q
Me.LineValue = v
End Sub
End Class
Dim Test As New List(Of RowsFound) From {New RowsFound(0, 1, 105.25), New RowsFound(1, 2, 100), New RowsFound(2, 1, 110), New RowsFound(3, 2, 60.25)}
Dim RowIndexMax As Integer = (From row As RowsFound In Test.OrderByDescending(Function(x) x.LineValue) Select row.RowIndex).First
Dim RowindexMin As Integer = (From row As RowsFound In Test.OrderBy(Function(x) x.LineValue) Select row.RowIndex).First
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句