不再解释,很容易的,我没有仔细研究过,在此记下,以后深入研究。
using
System;
using System.Collections.Generic;
using System.Collections;
using System.Linq;
using System.Text;
namespace Landpy
{
class Starter
{
delegate int Add( int i, int j);
delegate bool Compare( int i, int j);
delegate void NoNameMethod( string name);
static void Main()
{
Add add = (x, y) => x + y;
Console.WriteLine(add.Invoke( 1 , 2 ));
Compare compare = (i, j) => i == j;
Console.WriteLine(compare.Invoke( 1 , 2 ));
Console.WriteLine(compare.Invoke( 1 , 1 ));
NoNameMethod noNameMethod =
delegate ( string name)
{
Console.WriteLine(String.Format( " Hello {0}! " , name));
};
Action < int > hello = delegate ( int i)
{
for ( int j = 0 ; j < i; j ++ )
{
Console.WriteLine( " Hello " );
}
};
noNameMethod.Invoke( " Landpy " );
hello.Invoke( 3 );
string [] names = { " ++landpy " , " pxl " , " ljc " , " baby " };
// lambda的写法
var quereynamestwo = names.Where(n => n.Length == 3 ).Select(n => n.Substring( 2 )); // .Select(n => n.Name);
// linq的写法
var quereynames = from n in names
where n.Length == 3
select n;
foreach ( string name in quereynames)
{
Console.WriteLine(name);
}
foreach ( string name in quereynamestwo)
{
Console.WriteLine(name);
}
ArrayList employees = new ArrayList();
for ( int i = 0 ; i < 10 ; i ++ )
{
Employee employee = new Employee();
employee.Name = " Name " + i.ToString();
employee.Age = i;
employees.Add(employee);
}
Employee[] employeesArray = (Employee[])employees.ToArray( typeof (Employee));
var es = employeesArray.Where(n => n.Age > 4 );
foreach (Employee employeeTmp in es)
{
Console.WriteLine(employeeTmp.Name);
}
}
}
class Employee
{
public string Name
{
get ;
set ;
}
public int Age
{
get ;
set ;
}
}
}
using System.Collections.Generic;
using System.Collections;
using System.Linq;
using System.Text;
namespace Landpy
{
class Starter
{
delegate int Add( int i, int j);
delegate bool Compare( int i, int j);
delegate void NoNameMethod( string name);
static void Main()
{
Add add = (x, y) => x + y;
Console.WriteLine(add.Invoke( 1 , 2 ));
Compare compare = (i, j) => i == j;
Console.WriteLine(compare.Invoke( 1 , 2 ));
Console.WriteLine(compare.Invoke( 1 , 1 ));
NoNameMethod noNameMethod =
delegate ( string name)
{
Console.WriteLine(String.Format( " Hello {0}! " , name));
};
Action < int > hello = delegate ( int i)
{
for ( int j = 0 ; j < i; j ++ )
{
Console.WriteLine( " Hello " );
}
};
noNameMethod.Invoke( " Landpy " );
hello.Invoke( 3 );
string [] names = { " ++landpy " , " pxl " , " ljc " , " baby " };
// lambda的写法
var quereynamestwo = names.Where(n => n.Length == 3 ).Select(n => n.Substring( 2 )); // .Select(n => n.Name);
// linq的写法
var quereynames = from n in names
where n.Length == 3
select n;
foreach ( string name in quereynames)
{
Console.WriteLine(name);
}
foreach ( string name in quereynamestwo)
{
Console.WriteLine(name);
}
ArrayList employees = new ArrayList();
for ( int i = 0 ; i < 10 ; i ++ )
{
Employee employee = new Employee();
employee.Name = " Name " + i.ToString();
employee.Age = i;
employees.Add(employee);
}
Employee[] employeesArray = (Employee[])employees.ToArray( typeof (Employee));
var es = employeesArray.Where(n => n.Age > 4 );
foreach (Employee employeeTmp in es)
{
Console.WriteLine(employeeTmp.Name);
}
}
}
class Employee
{
public string Name
{
get ;
set ;
}
public int Age
{
get ;
set ;
}
}
}