Ï¡·¹¶¥¿Í×ÛºÏÉçÇøÏ¡·¹¶¥¿Í×ÛºÏÉçÇø

Ê×Ò³ | ×îÈȰæ¿é | »îÔ¾»áÔ± | ±¾ÖÜÈȵ㠷µ»ØMSDEV


·¢ÌùÈË:myoverflow
·¢±íʱ¼ä:Wed Aug 15 17:10:46 2007
×ܵĸоõÊÇÀàÐÍÎ޹غͶàÓïÑÔµÄÈںϡ£
1.ÒþÐ;ֲ¿±äÁ¿£º¼òµ¥À´Ëµ¾ÍÊǾֲ¿±äÁ¿µÄÀàÐÍ´Ó³õʼ»¯Õâ¸ö±äÁ¿µÄ±í´ïÊ½ÍÆµ¼µÃÀ´£¬ÄÇ
ôint i = 5;¾Í¿ÉÒÔÓÃvar i = 5;À´±íʾ¡£¶ÔÓÚfor¡¢using¡¢foreach¶¼¿ÉÒÔʹÓÃÒþÐ;ֲ¿
±äÁ¿¡£
2.À©Õ¹·½·¨£ºÊ¹µÃ¿ÉÒÔͨ¹ýʹÓÃʵÀý·½·¨Óï·¨µ÷Óõľ²Ì¬·½·¨¡£À©Õ¹·½·¨ÊÇͨ¹ýÖ¸¶¨¹Ø¼ü
×ÖthisÐÞÊη½·¨µÄµÚÒ»¸ö²ÎÊý¶øÉùÃ÷µÄ£¬¶øÇÒ½ö¿ÉÉùÃ÷ÔÚ¾²Ì¬ÀàÖС£±ÈÈ磺public stati
c int ToInt32(this string s) {return Int32.Parse(s);}£¬ÄÇôµ÷Óõķ½·¨ÊÇstring
s = "1234"; int i = s.ToInt32(); ×¢Ò⣬À©Õ¹·½·¨µÄÊÇÓÃnamespaceµ¼È룬µ«ÊÇʵÀý·½
·¨µÄÓÅÏȼ¶Òª¸ßÓÚÀ©Õ¹·½·¨¡£
3.Lambda±í´ïʽ£ºÌṩÁËÒ»¸ö¸ü¼Ó¼òÁ·µÄº¯ÊýʽÓï·¨À´Ð´ÄäÃû·½·¨¡£±ÈÈ磺 x => { retu
rn x + 1; }¡£Lambda±í´ïʽÊÇÄäÃû·½·¨µÄ·ºº¯³¬¼¯£¬ËüÌṩÁËÈçϸ½¼Ó¹¦ÄÜ£º
£¨1£©Lambda±í´ïʽÔÊÐí²ÎÊýÀàÐͱ»Ê¡ÂÔµôºÍ±»ÍƵ¼£¬¾¡¹ÜÄäÃû·½·¨ÒªÇóÏÔʽָ¶¨²ÎÊýÀàÐÍ
¡£
£¨2£©Lambda±í´ïʽÌå¿ÉÒÔÊÇÒ»¸ö±í´ïʽ»òÕßÓï¾ä¿é£¬¾¡¹ÜÄäÃû·½·¨Ìå¿ÉÒÔÊÇÒ»¸öÓï¾ä¿é¡£

£¨3£©Lambda±í´ïʽ×÷Ϊ²ÎÊý´«µÝ²ÎÓëÀàÐͲÎÊýÍÆµ¼ºÍÖØÔØ¾öÒé¡£
£¨4£©´øÓбí´ïʽÌåµÄLambda±í´ïʽ¿ÉÒÔ±»×ª»»³É±í´ïʽÊ÷¡£
4. ¶ÔÏóºÍ¼¯ºÏ³õʼ»¯Æ÷£º¿ÉÒÔ°üº¬Ò»¸ö¶ÔÏó»ò¼¯ºÏ³õʼ»¯Æ÷£¬ÓÃÓÚ³õʼ»¯Ð´´½¨µÄ¶ÔÏóµÄ
³ÉÔ±»òд´½¨µÄ¼¯ºÏµÄÔªËØ¡£±ÈÈçÒ»¸ö¶ÔÏó³õʼ»¯Æ÷µÄÀý×Ó£ºvar a = new Point { X =
0, Y = 1 };ËüµÈЧÓÚvar a = new Point();a.X = 0;a.Y = 1; ¼¯ºÏ³õʼ»¯Æ÷Ò²ÊÇÒ»Ñù£º
List<int> digits = new List<int> { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 };
5. ÄäÃûÀàÐÍ£ºÔÊÐínew²Ù×÷·ûÓëÄäÃû¶ÔÏó³õʼ»¯Æ÷ÁªÓÃÀ´´´½¨Ò»¸öÄäÃûÀàÐ͵ĶÔÏó¡£Ò»¸ö
ÄäÃûÀàÐÍÊÇÒ»¸öÎÞÃûÀà(nameless class)£¬ËüÖ±½Ó¼Ì³Ð×ÔObject¡£ÄäÃûÀàÐ͵ijÉÔ±ÊÇһϵ
ÁÐÍÆµ¼×ÔÓÃÓÚ´´½¨Õâ¸öÀàÐÍʵÀýµÄ¶ÔÏó³õʼ»¯Æ÷µÄ¶Á/дÊôÐÔ¡£ÔÚͬÑùµÄ³ÌÐòÖУ¬ÒÔÏàͬ˳
ÐòÖ¸¶¨ÁËһϵÁÐÏàͬÃû×ÖºÍÀàÐ͵ÄÁ½¸öÄäÃû¶ÔÏó³õʼ»¯Æ÷½«»á²úÉúÏàͬÄäÃûÀàÐ͵ÄʵÀý¡£
±ÈÈçÏÂÃæµÄд·¨ÊÇÕýÈ·µÄ£ºvar p1 = new { Name = "Lawnmower", Price = 495.00 }; v
ar p2 = new { Name = "Shovel", Price = 26.95 }; p1 = p2;
6.ÒþÐÍÊý×飺¾ÍÊÇ´´½¨±í´ïʽÖУ¬Êý×éʵÀýµÄÀàÐÍÍÆµ¼×ÔÊý×é³õʼ»¯Æ÷ÖÐÔªËØµÄÀàÐÍ¡£±È
È磺var a = new[] { 1, 10, 100, 1000 }; // int[]¡£ÒþÐÍÊý×é´´½¨±í´ïʽ»¹¿ÉÒÔÓëÄä
Ãû¶ÔÏó³õʼ»¯Æ÷½áºÏʹÓÃÀ´´´½¨ÄäÃûÀàÐ͵ÄÊý¾Ý½á¹¹¡£
7.²éѯ±í´ïʽ£º²éѯ±í´ïʽΪ²éѯÌṩÁËÒ»¸öÀàËÆÓÚ¹ØÏµºÍ·Ö²ãµÄ²éѯÓïÑÔ(ÈçSQLºÍXQue
ry)µÄÓïÑÔ¼¯³ÉÓï·¨¡£ËüÊôÓڷǸ³Öµ±í´ïʽ·ÖÀà¡£²éѯ±í´ïʽÒÔfrom¿ªÊ¼£¬½áÊøÓÚselect»ò
group×Ӿ䡣¿ªÍ·µÄfrom×Ó¾ä¿ÉÒÔ¸úËæ0¸ö»òÕ߸ü¶à¸öfrom»òwhere×Ӿ䡣ÿ¸öfrom×Ӿ䶼ÊÇ
Ò»¸ö²úÉúÆ÷£¬ËüÒýÈëÁËÒ»¸öµü´ú±äÁ¿ÔÚÐòÁÐÉÏËÑË÷£»Ã¿¸öwhere×Ó¾äÊÇÒ»¸ö¹ýÂËÆ÷£¬Ëü´Ó½á
¹ûÖÐÅųýһЩÏî¡£×îºóµÄselect»ògroup×Ó¾äÖ¸¶¨ÁËÒÀ¾Ýµü´ú±äÁ¿µÃ³öµÄ½á¹ûµÄÍâÐÎ(shap
e)¡£Select»ògroup×Ó¾äÇ°Ãæ¿ÉÓÐÒ»¸öorderby×Ӿ䣬ËüÖ¸Ã÷·µ»Ø½á¹ûµÄ˳Ðò¡£×îºóinto×Ó
¾ä¿ÉÒÔͨ¹ý°ÑÒ»Ìõ²éѯÓï¾äµÄ½á¹û×÷Ϊ²úÉúÆ÷²å½ø×ÓÐòÁвéѯÖеķ½Ê½À´Æ´½Ó²éѯ¡£C#3.
0°Ñ²éѯ±í´ïʽת»»(translate)³É×ñÑ­²éѯ±í´ïʽģʽµÄ¶à¸ö·½·¨µÄµ÷Óá£
8.±í´ïʽÊ÷£º±í´ïʽÊ÷ÊÇlambda±í´ïʽµÄ¸ßЧÄÚ´æÊý¾Ý±íʾ£¬²¢Éú³É±í´ïʽת»»µÄ½á¹¹£¬
ÇÒʹÆäÏÔʽ»¯¡£ÕâÑùlambda±í´ïʽ¼´×÷Ϊ¿ÉÖ´ÐдúÂ룬ÓÖ×÷Ϊ±í´ïʽÊ÷¡£






Ïà¹ØÖ÷Ìâ:
×îÐÂÈÈÌù
 ¡ñ fb.cpp