C#中的var理解
從 C# 3.0 開始,在方法范圍內聲明的變量可以具有隱式“類型”var。隱式類型本地變量為強類型,就像用戶已經自行聲明該類型,但編譯器決定類型一樣。i 的以下兩個聲明在功能上是等效的:
var?i?=?10;? int?i?=?10;var 關鍵字的常見用途是用于構造函數調用表達式。使用 var則不能在變量聲明和對象實例化中重復類型名稱
var?xs?=?new?List<int>();從 C# 9.0 開始,可以使用由目標確定類型的 表達式作為替代方法:
List<int>?xs?=?new(); List<int>??ys?=?new();在模式匹配中,在 var中使用 var 關鍵字。
var 的使用是允許的,但不是必需的,因為查詢結果的類型可以明確表述為 IEnumerable。
string[]?words?=?{?"apple",?"strawberry",?"grape",?"peach",?"banana"?}; var?wordQuery?=?from?word?in?wordswhere?word[0]?==?'g'select?word; foreach?(string?s?in?wordQuery) {Console.WriteLine(s); }var 允許結果是一系列匿名類型,且相應類型的名稱只可供編譯器本身訪問。如果使用 var,便無法為結果新建類。
var?custQuery?=?from?cust?in?customerswhere?cust.City?==?"Phoenix"select?new?{?cust.Name,?cust.Phone?};foreach?(var?item?in?custQuery) {Console.WriteLine("Name={0},?Phone={1}",?item.Name,?item.Phone); } 創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
- 上一篇: 使用 FieldMask 提高 C# g
- 下一篇: C# 异步与Windows应用程序