其他分享
首页 > 其他分享> > 委托-Lambda 表达式

委托-Lambda 表达式

作者:互联网

// 左边传参写法

// 无参写法

() => { print("C");

// 两个参数写法

(a, b) =>{print(a); print(b);}

// 一个参数写法

s =>
{
string str = s + "|" + s;
print(str);
};

或:

(s) =>
{
string str = s + "|" + s;
print(str);
};

// 右边是表达式写法

// 1.返回数值类型

x => x * x * x;

// 2.返回bool类型

(x, y) => x == y;

// 右边是语句块写法

(x) =>
{
return "st";
})


【适用场景】:

已知条件:
类A:
public delegate void oneCallback(int x);//委托的方法签名是:传入一个int,无返回值
public void Use(oneCallback callback)
{

}

类B:
A a =new A();
a.Use();//问题

------------------------------
问题:补充use方法的传参
答:用lambda写一个匿名方法,该方法是一个参数无返回值的方法,与oneCallback委托的方法签名一致
a.Use(x =>
{
print("Chinar");
});
或:
a.Use((x) =>
{
print("Chinar");
});

标签:Use,委托,方法,oneCallback,str,print,写法,表达式,Lambda
来源: https://www.cnblogs.com/moon-stars/p/16693831.html