ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

委托-Lambda 表达式

2022-09-14 17:34:02  阅读:242  来源: 互联网

标签:Use 委托 方法 oneCallback str print 写法 表达式 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

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有