VB.NET也是有运算符的,不过不是=>,而是用Function()代替的。比如求一个字符串数组中最短字符串的长度,代码如下:
Dim words As String() = {"cherry", "apple", "blueberry"}
Dim shortestWordLength As Integer = words.Min(Function(mm) mm.Length)
Console.WriteLine(shortestWordLength)
对应的C#代码如下:
string[] words = { "cherry", "apple", "blueberry" };
int shortestWordLength = words.Min(w => w.Length);
Console.WriteLine(shortestWordLength);
如果是求一个字符串数组中长度最短字符串,VB.NET代码如下:
Dim words As String() = {"cherry", "apple", "blueberry"}
Dim shortestWord As String = words.First(Function(s) s.Length = words.Min(Function(w) w.Length))
Console.WriteLine(shortestWord)
求一个字符串数组中长度最短字符串,C#代码如下:
string[] words = { "cherry", "apple", "blueberry" };
string shortestWord = words.FirstOrDefault(s => s.Length == words.Min(w => w.Length));
Console.WriteLine(shortestWord);
以上代码VS2013验证通过。