今天繼續寫上一篇文章C#4.0語法糖之第二篇,在開始今天的文章之前感謝各位園友的支持,通過昨天寫的文章,今天有很多園友們也提出了文章中的一些不足,再次感謝這些關心我的園友,在以后些文章的過程中不斷的完善以及自我提高,給各位園友們帶來更好,更高效的文章。
廢話就說到這里,下面正式進入我們的今天的C#4.0語法糖,今天給大家分享一下參數默認值、命名參數、對象初始化器和集合初始化器。
參數默認值和命名參數:方法的可選參數是.net 4.0最新提出的新的功能,對應簡單的重載可以使用可選參數和命名參數混合的形式來定義方法這樣就可以很高效的提供代碼的運行效率。設計一個方法的參數的時,可為部分或全部參數分配默認值。調用其方法時,可以重新指定分配了默認值的參數,也可以使用默認值重新指定分配默認值的參數時,可以顯式地為指定參數名稱賦值,隱式指定的時候,是根據方法參數的順序,靠c#編譯器的推斷。
我們用一個現實的例子來說明一下這個問題:比我我們有個這樣的需求,有個客戶類群體,他們的年齡默認都25歲,但是有些優質客戶可以放寬年齡,可以是24歲或者26等等。下面我直接貼一下傳統寫法的代碼:

1 public class Customer 2 3 { 4 5 //構造默認25歲年齡的客戶 6 7 public Customer(string CustomerId, string CustomerName) 8 9 {10 11 this.Age = 25;12 13 this.CustomerId = CustomerId;14 15 this.CustomerName = CustomerName;16 17 }18 19 //構造不默認年齡的客戶20 21 public Customer(string CustomerId, string CustomerName,int Age)22 23 {24 25 this.Age = Age;26 27 this.CustomerId = CustomerId;28 29 this.CustomerName = CustomerName;30 31 }32 33 public string CustomerId { get; set; }34 35 public int Age { get; set; }36 37 public string CustomerName { get; set; }38 39 }View Code輸出代碼:
1 //默認年齡的客戶 2 3 Customer customer=new Customer("01","張三"); 4 5 Console.WriteLine("Id:"+customer.CustomerId+"名稱"+customer.CustomerName+"年齡"+customer.Age); 6 7 Console.ReadLine(); 8 9 //指定年齡的客戶10 11 Customer customerEx = new Customer("01", "張三",26);12 13 Console.WriteLine("Id:" + customerEx.CustomerId + "名稱" + customerEx.CustomerName + "年齡" + customerEx.Age);14 15 Console.ReadLine();View Code輸出效果:
QQimGgVTcOE6COE0XDQFF00hRFMI0VST+F0Qou9hEiGahAvfQ+M7CNZpEEw08N8CtglvAsabgG7CXQfCHd8EzBkHc8ZBnHEQex0ge6yeNVbPGqtnj9VvHNcxx+qYY7WMsVrGWM0GAMZYNX2dKtpoJXW0kjpaSRktp4yUbVBKHikhDReThouIw4XEoULiUCFhqIAwlIcbysPZcrG2HKwtB2vLxtiy0IOZ6MFM9GAGaiAdOZCGHEhrGUhttqY2W1OarSlN1uQmaxLCkgi3JMItCXBLQmN/fGN/fGN/XEN/LKw/FtYfAzPHQM3RUHMUxBwFMUdCTJFgUyTY9BBkeggyRQBN4W7q+8Lq+8Lq+x7U924SWt8bWtcbWtsTWtsTsoXgmrcIAvQEAXqCanqCaro3ub8VQPe9vyU9/81fyf2/hpofD6DnPqDnbnX3JnequgOrugMru29Xdt2uWCfge7ld+X4CK7vXqeoOrOq+s5Utr+jm3Xegxv1z2xNc2+smpK43pK431E1974P6vgf1fWHAvnBgXzioLwJkigCZHoJND8GmSIgpCmKKgpqjoeZoqDkGZo6BmeMa+uM2fgcT4JbERksi3JKMsKQ0WVOarKlN1rRma3rLQHrLQAZyIAM5kIkazEINZqEHczCDOZjBXKwtF2vLw9nycUMF+KFCvK0Qbysk2IqIQ8XEoRLSUAlpqJQ8XEYeLiMPl1OGyynDFZSRCspIJXWkhDjEbl+thhLrEORx16v2wYUO26KbTttip21pnaF1ujYZfkP38FLX0NKA/alU20dhSaYXX3XalrqHlzfpGVnuGf4WI++hd/yRdXiWWlEyrjUMUuk2GmOEwRhhMMYZ9AkGfZJBtzPoDgZ9lkGfZVBdDOo8g7qwhQ8Sk1MOeZ0X6wdJWheMP/lDxSOcggveWKdJNN0kmm4WTzVLppol0y2yadQG6Fa7G5Ts+0BK7Ujp9Htp2USyTrNk6i3EG4je0CSaahK+ASGcXEcwCd+gUTDZyJ9s5E++oy4obwLKn4DwxiG8cQhvAsydAHMnQBuuAnLH6znj9ZzxOtaYm1rmWC1zrIYxCmCMAhij1YzRKvpIFW2kkjZSQR0ppw6XU4bLKMOl5OFS8nAxabiYNFxMHCoiDhW5nYS35eNteThbHs6Wi7PlYG05mMEszOC6llADbi2lIwfSW6xpLda0FqtbTsnNluQmS3KTJanJktRkSURYEhH9CYj+BHh/Arw/Ht4f39Af3+C2lNnNpqiioeZoqCkaaoqCmKLAbwNaJ3IToCkS2BcJ7IsE9T18B+AbIv72mP6bv5hwoOnhXwzoxxEBMoUD+8KBfWHA3tC63pC63uDanqCannuAnjvv89D3S+jPeKjqDZsGcvNtA21KKOh7JFS/LqEw4IaENjz0XgnFwsyxDf2bEkpo7E9otCTCLUkISzLCkuyWULM1rXlgq4TcBspGD2ZjBnMwtk0JvWUgwlDRpoFIw9+WUDFhiOXWD5w85nplHFjoGFzcNNBbEhr6loS2GGhdP5peMkv8jn56R1et9ueDzpc2x7dwvrRMPdmqn77xR9bhWXJZ0ZhSN0AgDhBJNiJphEQaIRHGSYRJEmGaRLCTCU4yYZZMmCUTXGSCi0xYohKfMMhPmZQPLl70TcgslVuegbk/zD1vx50m0XSzZLpFMo2UTqNk05hWO6bVjlM48EoHQekkqJxElZOodhJVToLyW6icBPfjik0cm+A3UTrwCgde/gbcJgoHTuHAyR1YuQPb+gZMqwMj28S+CVpqR0vtKDcSO0piR0qmkZINt4mnWyTTzeJpt8nW45p4CiGagoum4MIpuGA98DUKJxv4kzD+JIw/CeVPujMWhDsB5kyAORMgzjiQPV7PGa9jj9WxxmpZY7XMsRrmZmwaraKPVtFGK2mjFbTRCupI+ZbAVEoeLiENFxOHi4jDRYShQjf4oQL8UP6Gpdw/uLlYWw5mMBszmO12FWYwGz2QhR7IRK3j/qHP2CKt9BZrWvO6ulKbrSnNlk2SmyzJiHVSEJYUhCUZbkl6i343ifD+RER/IqI/Ef6/Act/838SxA8lAW7ZSOTmGKg5EmJ6CDaFg/pC6/qCa3vu1/TcA3Tfreq+s0VCf5mB3sSgbyeh6neT0FsS2khpWyXkNlDIt2LQu0kIZIqEmNylQtRmDIKaYxv6Y90Salg3UCLckgRfl5A7BqW1DKS3DKQjBzK3xKDs9SS0GYMG8/GDBThbIcFWSBgqfhODhktJbxmoiDDENK5WQYm1jeSRua/arPPGgYWttA8sGAcX2gcX38L2lqI6bIvtg4uW6SciVTeBJpxaeNkxuOgWVffIit7sRJJkACi5toH6FjBqDYzKlvV0Dy91jyy7NdYztmoZcpIKc4dblWYksh+FGkChBtGoITRqBIMaw6AmMMgpDHIag3RikTNY5Cy2ZQGHtDU1kvOLmtNzPvA4dEJqHGuSOn+oewRTcOF0k3C6STzdLJpukdhRsml0qwMrd+AUDoLKQVI5KZoZmnaGppul62YZulmG/v3Qde+HoZul62Zpm2i3MvMOVDeadSibqGco6hmyeoasdpLVToraSVE5ySonaROlk6h0EpUOgpstwsPJHXi30taxY1od6FYHWubAyBxo2brANvNZs2S6WTLdJJ5u2ugS4cKpzbawQbBpqcl1S3EnQJz1OAXkjNezxmq3pKhaxlg1fQywXu6tu2qz4qugjlRQRsopI+XkkTLyiDtRlVKGSynDpeThkg17FRPfBKwiwlAhfoMNmRXgbZvk42z5OFs+dp28Nwy+Q+7/AWz/zf//ycEMZqEHM1CDGaiB1GZrEsKSAO+PgZkjIeYIkOlBfV9Ibe99QM+96u671d2BVX+DGPTtRu57wtD3NHLflYfWVVT/biMX+b5GLhbWHwdbLxsSGvsTG9cllIJYr+NSm9cbua11XM66h9zv4WAebjAfZyvAuyW0noSKiUMlxCH3r3kZebgQb2MYV6phRACMZJ1+ruidUfXNqk2zatOsum9W3Ter6ZvVmGY15lmNeVZrmlvH/AadeU5nntOa5nrGVnmtnRgyb2TmmcY0p7O4dBZX1+haE1FaUlZPp/NYLCGL/QYmU0ClcTNzaxRdU8bBxTaLS29xtQ0u9VqnSdkZg0JxDwxqaoCZGmH9jTBrI2wQDhuCw0bhsDE4bBIOnYZD7XCoAw5ZaWmAJWdCkRQ6X/7B3sNnbTNfQfnv9c10o2i6UfgGuGAaIbI3iezNYnuLxIGSOtCtdozcgVM4iSonWT1D1c4wdLOstjmOYY7bPSDrd/HaXfyO9+P+6HvhbmJ8h7l34BjnOMY5rmGOa5jjGObYhjl22xtYbbPvwGybZerXYehnGLoZunYdhnaGvq60WapmlqKZpWhnKZoZisZJUc+S1bMkt89UTqJqhqhyElUOt73cIQwrt2PldozcjtnoG9EyO0o2jVpvDu3NkukWyVSzeLpJNI0QTbsXyRpFU43CyQbhZIPgTQcI4U1CeBNg3gSYO+4GxB0HcjZgj9ezx+tZ43Ws8Vp3utqghjlawxzdqAHH1qGvH2wuVm1SSRuppI1UUkcqqSOVlLehDm9SsQllC9ThCupw+f/njPw3fw0Vfw2UH0o5ZaSUPFxMHC7E23Jxtiz0QDrSmtLsllB/FMQUDuwLresNrum9B+j5URnoxy4L/YhGruY9Evp2HtrayEVsNHLuMLQpoRiYORZmjoP1xzWsS8htoCTEGwmlNG3UcVsMlP1WEhrMw64b6I2EiFvqOPJwAc7GMKxUwYgVYHyHbYWrHRe0TbgRGt5FZHQz6Ua8Sfuk2Dih63fRRW3NeJZ54pHQMC7pmJR0TKnNC8V1eCZL8Po7/qVnVzJaLa1dDmnHlLRjStbtNHSPYVMT+plsY1VFR3VlZ3VlN6CyF1BpAlRaABWDgApbTcVITfl4TcVETcVkTZmrvhydmFJaDv7T69cfeBw5a3M+gwneM24A401AuWNQ3gbcMRh3rJE3DuePNwknm0UTSOkUVu4gKJ0kt3j0syzDHNc4x+9akfU/UZpXW/sfy3sXpX2rqv7Hir5Fac+itHeDnu9iQbKV7nXE30/XgrhrQeSmc0HatyozLYk65yXmNVnPoqjDJexalvU+knTN89tdwu5HreY1NzLTG6S9q4L2OW77sqh3TdK3Jul9xDPOsdsX+R3LXMMcUz/Haptjts0x9bPMtkVu5wrbOM/pXOF1rfK6Vrldq9yORbpuhqzZQO0kubvHjeIRr3TilU7cRqjCuF0lf7MwhpTakVJ7i9TespGo1kPVlsEN+GYTuPFtahC4WY9ZMME0QupsFE5B3ZGLPwnlvzWCAeGuJ7C34GzAngCzx92sD2VwtsAeB7EnIHw7hLM5rzEO5k+DuRNA9hiQPf42Y0DOJJg3DeFuPMIZB/PsMP4EkD0BFTqg/EkgewzEnYIIHWDOGJA9DhY6G8Szje8y1yBygjkTQPb3Mw7kTEEEMxDun33mDwLEs0OFdhB7fMv5JyF8B5Q3CXzz4F/JOIjrgPHtYM7f6oRvn5zngPLtYM44iD3xV8H5MwA543WscQB9rJI6UkYeKSIM5eFs2ZjBdORAEsIa19gfDV2PQcG1vfcAGy3cDwtAP8JAf2kS+p5SbmsjF7YuofU1oc1loS0x6E0ScsegrXXc+ppQy9sSQr+RUC52MBf3xkAFGwtCmyMJ+Tgb3bBSDSOWArE68zxdPsRUDbthqYbZmjGOdnwd3Th3nQmufoKrn+DqxjjaEa52lKsd5WhG5N1OMk8LxzC6h5fY6mGebpSnG5V2OQtr8VQq9/Xr17BGbEpGWW5BTW5BTXxSQU+v5U9/+lNGThVZ3Cdsm+DrR/n6UYFxUtMxhE6MMVPpuqJCfXGxobi4o7S4q7Swu7TQVFrQX1ZgLS+wlReOlBeOlheOlRdMlBeMVRRAo+JS04o/8DhydtDxLf2I7A2cARhR0UCUv0MjSQ4nySF4KQQnhhGlaF4fWT1D080y22Y5xjn3H3dF9xCeJYcJBtjKfm7Xgrp3kqkb4PcsayzLqv5lVf+yyvw+TEvqwWdttidq86LStKjsf9Rme9FmXVKYFpXmRfXAE6NtVTP4pH3iVcf4q47xV+2Dq0rTosK0qDAtyk2L8r5FuWlFM/xCa5nnSKx0xbRycIHFMlCMi0rLE03vJFXRRWlbUPYtcFs1MLwM4gYng+BkYKwUj
新聞熱點
疑難解答