在VB.NET中使用LINQ的ForEach和匿名方法

ser*_*hio 16 .net linq vb.net foreach for-loop

我试图For EachForEachVB.NET中的LINQ 扩展替换经典循环...

  Dim singles As New List(Of Single)(someSingleList)
  Dim integers As New List(Of Integer)

  For Each singleValue In singles
    integers.Add(CInt(Math.Round(singleValue)))
  Next singleValue
Run Code Online (Sandbox Code Playgroud)

也许是这样的?

  singles.ForEach(Function(s As [Single]) Do ???
Run Code Online (Sandbox Code Playgroud)

如何使用匿名方法正确执行此操作(即不声明新函数)?

Dan*_*rth 23

试试这个:

singles.ForEach(Sub(s As [Single]) integers.Add(CInt(Math.Round(s))))
Run Code Online (Sandbox Code Playgroud)

你需要一个Sub这里,因为你的For Each循环体不会返回一个值.