日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程语言 > C# >内容正文

C#

【C#】读书笔记

發(fā)布時(shí)間:2024/9/5 C# 45 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【C#】读书笔记 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

一,C#對(duì)象初始化語(yǔ)法:

1 Product p = new Product() 2 { 3 Name = "小黃人", 4 Price = 34, 5 Description = "機(jī)智", 6 Category = "奢飾品", 7 ProductID = 0 8 };

聲明對(duì)象嘛,應(yīng)該有分號(hào)的。。。。

其實(shí),我們?cè)谑褂眉匣驍?shù)組的時(shí)候,早就使用過(guò)這種語(yǔ)法糖了,如:

1 List<int> tempList = new List<int> { 1, 2, 3 };

?二、使用拓展方法

第三方類或者是沒(méi)有源代碼的類,可以通過(guò)用拓展方法來(lái)獲得所需的功能。

1 public static class ProductListExtension 2 { 3 public static decimal TotalPrice(this ProductList list) 4 { 5 decimal d = 0; 6 foreach (Product item in list.Products) 7 { 8 d += item.Price; 9 } 10 return d; 11 } 12 }

注意,拓展方法所在的類必須是靜態(tài)類,拓展方法也必須是靜態(tài)方法。

調(diào)用的方法,與普通的方法使用方法一致,如下:

1 decimal temp = p.TotalPrice();

?三、使用Lambda表達(dá)式

Lambda表達(dá)式以委托的方式簡(jiǎn)寫方法體。

學(xué)習(xí)Lambda之前,先引入委托Func<T,Tresult>,用來(lái)封裝具有一個(gè)T類型參數(shù),并返回一個(gè)TResult類型參數(shù)的方法,該委托可以作為其他方法的參數(shù)進(jìn)行傳遞。這種寫法實(shí)際上就是不用自己定義委托。

參考:http://www.cnblogs.com/oneword/archive/2010/08/31/1813994.html

1 //Func首先是定義一個(gè)委托,委托所指向方法只有一個(gè)參數(shù)Prod,有一個(gè)返回值bool 2 Func<Product, bool> func = delegate(Product prod) 3 { 4 return prod.Category == "語(yǔ)文"; 5 }; 6 //用Lambda的方式來(lái)簡(jiǎn)化委托的定義 7 func = prod => prod.Category == "語(yǔ)文"; 8 //或者是不聲明Func,直接把Lambda表達(dá)式作為參數(shù)傳遞給指定的以Func委托為參數(shù)的方法 9 foreach (Product p in ProductArray.Filter(prod => prod.Category == "語(yǔ)文")) 10 { 11 dd += p.Price; 12 }

?四、臨時(shí)

DataTable dt=new DataTable();

dt.AsEnumerable()返回一個(gè)IEnumrable<T>對(duì)象,其泛型參數(shù)T為DataRow,此返回對(duì)象可用在LinQ表達(dá)式中。

EnumerableRow.Select()方法轉(zhuǎn)化原DataRow元素,示例代碼如下:

return dt.AsEnumerable().Select(row => new Person(){Name =Convert.ToString(row["Name"]),Age = Convert.ToInt32(row["Age"])}.ToList();

上面代碼的作用是將DataTable(即dt)中的每一行(即DataRow)轉(zhuǎn)化成一個(gè)Person對(duì)象,最后生成一個(gè)Person的List。

轉(zhuǎn)載于:https://www.cnblogs.com/SharpL/p/4549743.html

總結(jié)

以上是生活随笔為你收集整理的【C#】读书笔记的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。