当前位置: 首页 > wzjs >正文

舟山专业做网站网站查询入口

舟山专业做网站,网站查询入口,中国建设银行香港分行网站,php 做的应用网站概述 在 C# 中,委托是一种类型,它表示对具有特定参数列表和返回类型的方法的引用。C# 提供了一些内置委托,使得开发者可以更方便地使用委托功能,无需手动定义委托类型。本文将详细介绍 Action 和 Func 这两个常用的内置委托。 A…

概述

在 C# 中,委托是一种类型,它表示对具有特定参数列表和返回类型的方法的引用。C# 提供了一些内置委托,使得开发者可以更方便地使用委托功能,无需手动定义委托类型。本文将详细介绍 Action 和 Func 这两个常用的内置委托。

Action 委托

Action 委托用于表示没有返回值的方法。它可以有 0 到 16 个输入参数,这些参数的类型可以不同。

无参数的 Action 委

// 不支持返回值的内置委托
Action action = new Action(() =>
{Console.WriteLine("无参数委托");
});
action();

在这个例子中,我们创建了一个无参数的 Action 委托 action,并使用 Lambda 表达式为其赋值。当调用 action() 时,会执行 Lambda 表达式中的代码,输出 无参数委托

带参数的 Action 委托

// 带参数不可以有返回值
// 使用方法
Action<string, int> action1 = new Action<string, int>(MyAction);// 使用匿名函数
Action<string, int> action2 = (a, b) => {Console.WriteLine($"我叫{a},今年{b}岁");
};
action2("凡凡", 18);static void MyAction(string a, int b)
{Console.WriteLine($"{a},{b}");
}

这里创建了两个带参数的 Action 委托。action1 委托引用了 MyAction 方法,action2 委托使用了匿名函数。Action<string, int> 表示该委托接受一个 string 类型和一个 int 类型的参数,并且没有返回值。

Func 委托

Func 委托用于表示有返回值的方法。它至少有一个泛型参数,最后一个泛型参数表示返回值类型,前面的泛型参数表示输入参数类型。

无参数的 Func 委托

// 带返回类型的委托
Func<string> func1 = new Func<string>(MyFunc);
Console.WriteLine(func1());Func<string> func2 = () => { return "哈哈"; };
Console.WriteLine(func2());static string MyFunc()
{return "嘿嘿";
}

Func<string> 表示该委托没有输入参数,返回值类型为 stringfunc1 委托引用了 MyFunc 方法,func2 委托使用了匿名函数。

带参数的 Func 委托

// 设置了三个泛型参数类型,前两个代表参数,最后一个代表返回
Func<string, int, bool> func3 = new Func<string, int, bool>(MyFunc2);
Func<string, int, bool> func4 = (a, b) => { return int.Parse(a) == b; };
Console.WriteLine(func3("1", 2));
Console.WriteLine(func4("2", 2));static bool MyFunc2(string a, int b)
{return int.Parse(a) == b;
}

Func<string, int, bool> 表示该委托接受一个 string 类型和一个 int 类型的参数,返回值类型为 boolfunc3 委托引用了 MyFunc2 方法,func4 委托使用了匿名函数。

总结

Action 委托适用于不需要返回值的方法,而 Func 委托适用于需要返回值的方法。通过使用这些内置委托,可以减少手动定义委托类型的工作量,使代码更加简洁和易于维护。


namespace _2.内置委托
{internal class Program{static void Main(string[] args){//不支持返回值的内置委托Action action = new Action(() =>{Console.WriteLine("无参数委托");});action();//带参数不可以有返回值Action<string, int> action1 = new Action<string, int>(MyAction);//使用方法Action<string, int> action2 = (a, b) => {Console.WriteLine($"我叫{a},今年{b}岁");};//使用匿名函数action2("凡凡", 18);//带返回类型的委托Func<string> func1 = new Func<string>(MyFunc);Console.WriteLine(func1());Func<string> func2 =() => { return "哈哈"; };Console.WriteLine(func2());//设置了三个泛型参数类型,前两个代表参数,最后一个代表返回Func<string, int, bool> func3 =new Func<string, int, bool>(MyFunc2);Func<string, int, bool> func4 = (a, b) => { return int.Parse(a) == b; };Console.WriteLine(func3("1",2));Console.WriteLine(func4("2",2));}static void MyAction(string a,int b){Console.WriteLine($"{a},{b}");}static string MyFunc(){return "嘿嘿";}static bool MyFunc2(string a,int b){return int.Parse(a) == b;}}
}

http://www.dtcms.com/wzjs/36801.html

相关文章:

  • 岗顶网站设计如何让百度收录自己的网站
  • wordpress 固定链接翻译北京优化seo
  • 妇联网网站建设工作电商网站设计
  • 专业设计网站有哪些宁波网络推广联系方式
  • 韩国网站设计欣赏网站之家查询
  • 山东宏远建设有限公司网站百度网址导航主页
  • 网站做赌博词怎么推广广东病毒感染最新消息
  • 哈尔滨工程建设青岛网站seo公司
  • 成都网站建设小公司排名爱站网ip反查域名
  • 各种中药材初加工平台seo关键词排名优化的方法
  • 北京建网站多少钱58网络推广
  • wordpress调用插件抖音seo怎么收费
  • 自己做电视视频网站人工智能培训机构排名
  • 企业为什么需要网站西安市网站
  • 四川门户网站建设网址大全浏览器下载
  • 用数据库做学校网站论文seo一般包括哪些内容
  • 网站开发 源码云南seo网站关键词优化软件
  • 网站空间域名每年都得交吗如何写营销软文
  • 网站建设主要由哪几个部分组成万网官网
  • java怎么做视频网站搜索 引擎优化
  • 广东米可信息技术有限公司seo外包方法
  • 门户网站后台管理系统百度seo排名优化是什么
  • 赤峰建网站营销是做什么
  • 微友圈推广平台怎么加入拼多多seo 优化软件
  • 网站开发实习计划模板百度网站收录入口
  • 网站建设sem怎么做seo软件推荐
  • 用记事本做电影介绍的网站营销策略主要包括哪些
  • 网站做cdnseochinaz查询
  • 138ip地址查询网站百度游戏风云榜
  • 广州网站建设商城西安seo公司