匿名方法和Lambda表示式

2021-09-06 07:06:35 字數 938 閱讀 1742

出於mvvm學習的需要,複習下匿名方法和lambda表示式,因為之前用的也比較少,所以用的也不是很熟練,baidu下相關的知識,寫了這個demo,目標是用簡單的方法展示這個怎麼用。

這裡偏重的和linq中的lambda表示式 

var fileslookup = files.tolookup(f=>f.substring(f.lastindexof('

.')).toupper());

using

system;

namespace

匿名函式和lambda表示式

;//匿名方法

action

funb = (int x, int y) => ;//

lambda表示式

//輸出

funa(3, 4

); funb(

3, 4

); console.readkey();

委託除了可以返回結果以外,它與action委託完全相同。最簡單的func實現沒有引數。

func fun1 = delegate(int x, int y) ;//

匿名方法

func

fun2 = (int x, int y) => ;//

lambda表示式

//輸出

console.writeline(fun1(3, 4

)); console.writeline(fun2(

3, 4

)); console.readkey(); }}

}

一圖勝過千言,程式執行如下:

匿名方法和Lambda表示式

1 匿名方法 在c 2.0版本中引入了匿名方法,匿名方法與具名方法 即普通的方法 相對 簡單示例 delegate void mydelegate int x 宣告乙個委託型別 void main del 20 使用場景 給初始化委託變數 給組合委託賦值 給委託增加方法 語法 匿名方法必須與關聯的委...

匿名方法 Lambda表示式和事件

在前面我們知道委託可以指向乙個或多個方法,當有乙個方法只需要用一次並且很簡短,例如 static int test1 int arg1,int arg2 使用委託指向這個方法 static void main string args 我們可以對 進行簡化,讓其看起來更為簡潔,所以我們可以使用匿名方法...

C 匿名方法和Lambda表示式

有一次看見別人的 裡 以及花裡胡哨的省略寫法感覺好炫酷,就去整理了一下匿名方法和lambda表示式的寫法。1.無返回值型別actiontellname delegate string name 2.委託為方法引數時,省略構造委託例項listlistarray new list listarray.f...