自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

.NET Framework委托的預(yù)定義方法介紹

開發(fā) 后端
我們將會(huì)在這篇文章中為大家詳細(xì)介紹有關(guān).NET Framework委托的一些預(yù)定義方法,希望能夠?qū)τ中枰呐笥延兴鶐椭?/div>

.NET Framework開發(fā)環(huán)境對(duì)于開發(fā)人員來(lái)說(shuō)是一個(gè)非常實(shí)用的開發(fā)平臺(tái)。我們可以通過(guò)它來(lái)進(jìn)行WEB應(yīng)用程序的部署。前言:從.NET Framework2.0開始以來(lái),系統(tǒng)預(yù)定義的委托使使代碼看起來(lái)有點(diǎn)像“天書”,再加上匿名表達(dá)式,以及后面Lambda表達(dá)式的“摻和”,代碼就更加難懂了,于是自己就一點(diǎn)點(diǎn)查MSDN,到現(xiàn)在終于有點(diǎn)入門了。#t#

用.NET Framework委托:

  1. 1、public delegate void Action< T>(T obj )   
  2. 2、public delegate TResult Func< TResult>()  
  3. 3、public delegate bool Predicate< T>(T obj)  

其中:Action和Func還包括從不帶任何參數(shù)到最多四個(gè)參數(shù)的重載?

1、public delegate void Action< T>(T obj )

封裝一個(gè)方法,該方法只采用一個(gè)參數(shù)并且不返回值。

Code

  1. Action< string> messageTarget;   
  2. messageTarget = s => Console.
    WriteLine(s);  
  3. messageTarget("Hello, World!"); 

2、public delegate TResult Func<TResult>()

封裝一個(gè)具有一個(gè)參數(shù)并返回 TResult 參數(shù)指定的類型值的方法。

類型參數(shù)T

此委托封裝的方法的參數(shù)類型。

TResult

此.NET Framework委托封裝的方法的返回值類型

Code
 

  1. public static void Main()  
  2. {  
  3. // Instantiate delegate to reference UppercaseString method  
  4. ConvertMethod convertMeth = UppercaseString;  
  5. string name = "Dakota";  
  6. // Use delegate instance to call UppercaseString method  
  7. Console.WriteLine(convertMeth(name));  
  8. }  
  9. private static string UppercaseString(string inputString)  
  10. {  
  11. return inputString.ToUpper();  

 

3、public delegate bool Predicate<T>(T obj)

表示定義一組條件并確定指定對(duì)象是否符合這些條件的方法。

類型參數(shù)

T:要比較的對(duì)象的類型。

返回值

如果 obj 符合由此委托表示的方法中定義的條件,則為 true;否則為 false。

Code

  1. public static void Main()  
  2. {  
  3. // Create an array of five Point 
    structures.  
  4. Point[] points = { new Point(100, 200),   
  5. new Point(150, 250), new Point(250, 375),   
  6. new Point(275, 395), new Point(295, 450) };  
  7. Point first = Array.Find(points, ProductGT10);  
  8. // Display the first structure found.  
  9. Console.WriteLine("Found: X = {0}, 
    Y = {1}", first.X, first.Y);  
  10. }  
  11. // This method implements the test 
    condition for the Find  
  12. // method.  
  13. private static bool ProductGT10(Point p)  
  14. {  
  15. if (p.X * p.Y > 100000)  
  16. {  
  17. return true;  
  18. }  
  19. else  
  20. {  
  21. return false;  
  22. }  

 

責(zé)任編輯:曹凱 來(lái)源: 博客園
相關(guān)推薦

2010-01-05 18:49:57

.NET Framew

2009-08-18 11:08:24

.Net Framew

2012-05-04 15:54:16

ASP.NET

2009-12-15 11:28:34

.NET Framew

2009-07-20 16:12:21

ASP.NET Fra

2010-01-05 09:57:34

.NET Framew

2009-09-11 12:00:33

C#預(yù)定義數(shù)據(jù)類型

2010-01-06 17:12:26

.Net Framew

2009-07-20 16:04:37

ASP.NET fra

2010-01-05 17:39:10

.NET Framew

2010-01-05 16:20:46

.NET Framew

2010-01-15 15:26:46

VB.NET自定義類型

2010-01-06 18:33:56

.Net Framew

2010-01-05 10:17:35

.NET Framew

2010-01-05 15:35:21

.NET Framew

2010-01-06 10:07:35

.NET Framew

2009-05-26 09:09:50

.NET FramewStream.Read基礎(chǔ)類

2010-01-06 16:40:11

.Net Framew

2010-01-06 11:30:22

.NET Framew

2010-01-05 15:52:07

.NET Framew
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)