您好,登錄后才能下訂單哦!
這篇文章給大家介紹如何實現Visual Basic 10中的集合與數組初始值設定,內容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。
伴隨.NET 4.0和Visual Studio 2010的發布,Visual Basic 10添加了集合與數組初始值設定項的支持。這些功能與C#的非常類似,它僅是對擴展方法和類型引用作出了少許改進。
集合初始值設定項
和C#一樣,Visual Basic的集合初始值設定項用在那些實現了IEnumerable接口并暴露Add方法的類。但與C#不同的是,Add方法可在擴展方法中進行定義。
var x As new List<String>() {"Item1", "Item2"} Dim x As New List(Of String) From {"Item1", "Item2"}
給Add方法傳入多個參數也和C#非常類似。
var x = new Dictionary(){{1, "Item1"}, {2, "Item2"}} Dim x As New Dictionary(Of Integer, String) From {{1, "Item1"}, {2, "Item2"}}
C#語法中會有輕微的歧義現象,這使得它可用把屬性初始值設定項和對象初始值設定項聯系起來。通過使用關鍵字With和From,有人可能會假定VB能克服這方面的限制,把兩個初始值設定寫在同一條語句中。不幸的是,情況并沒那么簡單,以下的句子就會出現語法問題:
Dim x as New List(Of Integer) With {.Capacity = 10} From {1,2,3}
另一個VB學習C#的方面是異常的處理方式。如果給特定集合添加任何項的時候拋出異常,整個操作都會中止而該集合變量的值也不會改變。
數組初始值設定項
數值初始值設定項現在可支持類型引用,這樣大大減少了代碼量。正如我們接下來看到的代碼那樣,花括號中的數組值就需要對數組進行是否創建和類型的推斷。
Dim x = {1, 2, 3}
相比之下,VB早期的版本要求括號為空,用以表示數組。而且,在沒有明確指定的情況下,會把該變量定義為對象數組。
Dim x As Integer() = {1, 2, 3} ‘integer array Dim x() = {1, 2, 3} ‘object array
同時支持多維數組和交錯數組,盡管后者的語法(每個數組的括號)顯得有點笨拙。
Dim multi = {{1, 2}, {3, 4}} Dim jagged()() = {({1, 2}), ({3, 4, 5})}
數組初始值設定項也可以在調用函數中內聯使用。
關于如何實現Visual Basic 10中的集合與數組初始值設定就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。