using System;
using System.Linq;
using System.Collections;
using System.Collections.Generic;
public class MainClass {
public static void Main() {
string[] presidents = {"G", "H", "a", "H", "over", "Jack"};
string name = presidents.Last(p => p.StartsWith("H"));
Console.WriteLine(name);
}
}
ASP.NET & Csharp (C#)
ASP.NET & Csharp (C#) , Here you can find my posts about .NET c# .
Last Prototype
using System;
using System.Linq;
using System.Collections;
using System.Collections.Generic;
public class MainClass {
public static void Main() {
string[] presidents = {"G", "H", "a", "H", "over", "Jack"};
string name = presidents.Last();
Console.WriteLine(name);
}
}
A lambda expression can reference the local variables and parameters of the method in which it's defined.
using System;
delegate int NumericSequence();
class Test {
static void Main() {
int seed = 0;
NumericSequence natural = () => seed++;
Console.WriteLine(natural());
Console.WriteLine(natural());
}
}
A lambda expression has the following BNF form: (parameters) => expression-or-statement-block
using System;
class Test {
static void Main() {
Func<int, int> square = x => x * x;
Console.WriteLine(square(3)); // 9
}
}
square is assigned the lambda expression x = > x * x:
using System;
delegate int Transformer(int i);
class Test {
static void Main() {
Transformer square = x => x * x;
Console.WriteLine(square(3)); // 9
}
}
A local variable instantiated within a lambda expression is unique per invocation of the delegate instance.
using System;
delegate int NumericSequence();
class Test {
static NumericSequence Natural() {
return () => { int seed = 0; return seed++; };
}
static void Main() {
NumericSequence natural = Natural();
Console.WriteLine(natural());
Console.WriteLine(natural());
}
}
return a lambda function
using System;
delegate int NumericSequence();
class Test {
static NumericSequence Natural() {
int seed = 0;
return () => seed++;
}
static void Main() {
NumericSequence natural = Natural();
Console.WriteLine(natural());
Console.WriteLine(natural());
}
}