【发布时间】:2018-02-26 12:35:55
【问题描述】:
我有一本 T 的字典,我想根据谓词得到集合范围的乘法
特别是我有一个带有平均值(整数)和数据(整数)的键(字符串)字典 我想将平均 > 6 的所有元素的数据相乘
Class Classroom
Sub New(ByVal NewData As Integer, ByVal NewAverage As Integer)
Average = NewAverage
Data = NewData
End Sub
Dim Data As Integer
Dim Average As Integer
End Class
Dim Elements As New Dictionary(Of String, Classroom)
Elements.Add("Simon", New Classroom( 6, 5))
Elements.Add("Jennifer", New Classroom(7, 7))
Elements.Add("Timoty", New Classroom(8, 4))
Elements.Add("Janet", New Classroom(7, 6))
我试过这个 Linq 表达式,但它不起作用
Dim Result as Integer = Elements.Where(Function(minAverage) minAverage.Value.Average > 6).Aggregate(Fuction(x, y) x.Value.Data * y.Value.Data)
【问题讨论】:
-
怎么不工作了?你有例外吗?错误的答案?
-
无法将整数值转换为 System.Collections.Generic.KeyValuePair(Of String, Classroom)
标签: vb.net linq dictionary