最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C# 匿名方法的實現(xiàn)示例

 更新時間:2026年03月24日 09:53:17   作者:A愛了個I  
本文詳細(xì)介紹了C#中的匿名方法,包括其聲明方式(使用delegate和lambda表達(dá)式),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

C# 匿名方法是一個“內(nèi)聯(lián)”語句或表達(dá)式,可在需要委托類型的任何地方使用。 可以使用匿名函數(shù)來初始化命名委托,或傳遞命名委托作為方法參數(shù)。本文主要介紹C# 匿名方法。

1、C# 匿名方法的聲明

可以使用 lambda 表達(dá)式或匿名方法來創(chuàng)建匿名函數(shù)。 建議使用 lambda 表達(dá)式,因為它們提供了更簡潔和富有表現(xiàn)力的方式來編寫內(nèi)聯(lián)代碼。 與匿名方法不同,某些類型的 lambda 表達(dá)式可以轉(zhuǎn)換為表達(dá)式樹類型。匿名方法定義語法如下,

1)使用delegate 關(guān)鍵字創(chuàng)建委托實例來聲明

delegate void MyDelegate(string s);
...
MyDelegate m = delegate(string x)
{
    Console.WriteLine("匿名方法: {0}", x);
};

2)使用 lambda 表達(dá)式

using System;
using System.Collections.Generic;
using System.Linq;
using System.Linq.Expressions;
using System.Text;
using System.Threading.Tasks;
namespace cjavapy
{
    delegate void MyDelegate(string s);
    class Program
    {
        static void Main(string[] args)
        {
            //Expression<del> myET = x => x * x;
            MyDelegate m =  x=>Console.WriteLine("匿名方法: {0}", x);
            Console.ReadKey();
        }
    }
}
————————————————
版權(quán)聲明:本文為CSDN博主「A愛了個I」的原創(chuàng)文章,遵循CC 4.0 BY-SA版權(quán)協(xié)議,轉(zhuǎn)載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/fl1768317420/article/details/137703812

2、匿名方法的使用

在 C# 1.0 中,通過使用在代碼中其他位置定義的方法顯式初始化委托來創(chuàng)建委托的實例。 C# 2.0 引入了匿名方法的概念,作為一種編寫可在委托調(diào)用中執(zhí)行的未命名內(nèi)聯(lián)語句塊的方式。 C# 3.0 引入了 lambda 表達(dá)式,這種表達(dá)式與匿名方法的概念類似,但更具表現(xiàn)力并且更簡練。 這兩個功能統(tǒng)稱為匿名函數(shù)。 通常,面向 .NET Framework 3.5 或更高版本的應(yīng)用程序應(yīng)使用 lambda 表達(dá)式。

例如,

using System;
using System.Collections.Generic;
using System.Linq;
using System.Linq.Expressions;
using System.Text;
using System.Threading.Tasks;
namespace cjavapy
{
    class Test
    {
        delegate void MyDelegate(string s);
        static void MyMethod(string s)
        {
            Console.WriteLine(s);
        }
        static void Main(string[] args)
        {
            //原始委托語法
            //使用指定方法初始化。
            MyDelegate md1 = new MyDelegate(MyMethod);
            // c# 2.0:一個委托可以被初始化
            //內(nèi)部代碼,稱為“匿名方法”。這
            //方法以字符串作為輸入?yún)?shù)。
            MyDelegate md2 = delegate (string s) { Console.WriteLine(s); };
            // c# 3.0。委托可以被初始化
            //一個lambda表達(dá)式lambda也接受一個字符串
            //作為輸入?yún)?shù)(x)。x的類型由編譯器推斷。
            MyDelegate md3 = (x) => { Console.WriteLine(x); };
            // 調(diào)用委托。
            md1("C#");
            md2("Java");
            md3("Python");
            Console.ReadKey();
        }
    }
}

到此這篇關(guān)于C# 匿名方法的實現(xiàn)示例的文章就介紹到這了,更多相關(guān)C# 匿名方法內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評論

交城县| 张家口市| 黔东| 卢龙县| 聂荣县| 南郑县| 朔州市| 凤凰县| 望奎县| 恭城| 海原县| 马鞍山市| 华阴市| 阳原县| 宝应县| 稻城县| 于田县| 江城| 五河县| 平利县| 宁陵县| 丹棱县| 黄山市| 乌审旗| 寻乌县| 甘肃省| 吐鲁番市| 巩留县| 金湖县| 宾川县| 翁牛特旗| 高陵县| 离岛区| 丹寨县| 武穴市| 武威市| 兰西县| 和硕县| 集贤县| 凤城市| 锦屏县|