C#中的let字句應(yīng)用示例
一、應(yīng)用場景
在查詢表達式中,存儲子表達式的結(jié)果有時很有用,這樣可以在隨后的子句中使用。 可以使用 let 關(guān)鍵字完成這一工作,該關(guān)鍵字可以創(chuàng)建一個新的范圍變量,并且用您提供的表達式的結(jié)果初始化該變量。 一旦用值初始化了該范圍變量,它就不能用于存儲其他值。 但如果該范圍變量存儲的是可查詢的類型,則可以對其進行查詢。
二、示例代碼
using System; using System.Linq; namespace UseLet { class Program { static void Main() { string[] strings = { "A penny saved is a penny earned.", "The early bird catches the worm.", "The pen is mightier than the sword." }; var earlyBirdQuery = from sentence in strings let words = sentence.Split(' ') from word in words let w = word.ToLower() where w[0] == 'a' || w[0] == 'e' || w[0] == 'i' || w[0] == 'o' || w[0] == 'u' select word; foreach (var v in earlyBirdQuery) { Console.WriteLine("\"{0}\" starts with a vowel", v); } Console.WriteLine("Press any key to exit"); Console.ReadLine(); } } }
從上面效果可以看出子句let的作用。如果不使用 let,則必須在 where 子句的每個謂詞中調(diào)用 ToLower,并且let可以保存from字句中的變量來使用。
總結(jié)
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作能帶來一定的幫助,如果有疑問大家可以留言交流。
相關(guān)文章
C#創(chuàng)建SQLite控制臺應(yīng)用程序詳解
這篇文章主要為大家詳細介紹了C#創(chuàng)建SQLite控制臺應(yīng)用程序,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-07-07C#環(huán)形緩沖區(qū)(隊列)完全實現(xiàn)
這篇文章主要為大家詳細介紹了C#環(huán)形緩沖區(qū)(隊列)完全實現(xiàn)代碼,感興趣的小伙伴們可以參考一下2016-07-07