LamBda学习(一)
对于lamBda的概念还不是很清楚,先做了一个Demo的,判断一个数字是奇数,还是偶数。
Sub TestResult(ByVal value As Integer, ByVal fun As Func(Of Integer, Boolean))
If fun.Invoke(value) Then
Console.WriteLine("偶数")
Else
Console.WriteLine("奇数")
End If
End Sub
If fun.Invoke(value) Then
Console.WriteLine("偶数")
Else
Console.WriteLine("奇数")
End If
End Sub
Function Check(ByVal value As Integer) As Boolean
Return value Mod 2 = 0
End Function
Return value Mod 2 = 0
End Function
Sub Main()
TestResult(6, AddressOf Check) '使用委托方式
TestResult(5, Function(value As Integer) value Mod 2 = 0)
Console.ReadKey()
End Sub
TestResult(6, AddressOf Check) '使用委托方式
TestResult(5, Function(value As Integer) value Mod 2 = 0)
Console.ReadKey()
End Sub
可以看出,如果使用委托还必须,定义一个函数。使用lambda表达式语法,简洁得多了,不过又变复杂了。lambda表达式,支持多个语句吗?