Dim cc As String(),這樣只是定義了一個數組類型的變量,它的值為Nothing,所以后面會出NullReferenceException。
軹城網站制作公司哪家好,找創(chuàng)新互聯(lián)!從網頁設計、網站建設、微信開發(fā)、APP開發(fā)、成都響應式網站建設公司等網站項目制作,到程序開發(fā),運營維護。創(chuàng)新互聯(lián)公司2013年成立到現(xiàn)在10年的時間,我們擁有了豐富的建站經驗和運維經驗,來保證我們的工作的順利進行。專注于網站建設就選創(chuàng)新互聯(lián)。
定義數組要這么定義Dim cc(k) As String
還有你為什么要用參數k呢,可以通過list.Count來獲得列表中元素的數量。
Private Function GetText(list As List(Of TextBox)) As String()
If list Is Nothing Then Throw New ArgumentNullException("list")
Dim k As Integer = list.Count - 1
Dim cc(k) As String
For i As Integer = 0 To k
cc(i) = list(i).Text
Next
Return cc
End Function
還有一些其他方法,比如用convertAll
Dim Texts = list.ConvertAll(Function(txt) txt.Text).ToArray
或者LINQ:
Dim ts = (From c In list Select c.Text).ToArray
ConvertAll返回類型就是List(Of T),LINQ返回類型是IEnumerable(OF T)。它們都有ToArray()方法來轉化為數組,不過很多時候其實用不著轉化成數組。
上面兩種語法至少要VS2008才支持
泛型參數,表示一種特定類型,通常用于集合List, Dictionary之類的。
原型:Dictionary(Of TKey, TValue)
原型不能直接使用,必須給TKey, TValue指定一個類型(Type)
強類型字典:Dictionary(Of String, String)
表示鍵和值都為String類型的字典。
初始化一個ArrayList對象,調用它的方法和屬性,以及增加等操作。
Dim?myAL?As?New?ArrayList()
'Add方法用來增加元素。?
myAL.Add("Hello")
myAL.Add("World")?
myAL.Add("!")
'Count屬性表示元素個數。
Console.WriteLine(myAL.Count.ToString())
建議你用下面兩個泛型集合類替代ArrayList:
System.Collections.Generic.List
System.Collections.ObjectModel.Collection
你可以限制泛型類型為實現(xiàn)某一個接口的子類,通過添加 class MyClass : where T : IEnumerable可以限制T為實現(xiàn)IEnumerable的類,但是你不能限制T類型是接口類型,你只能限制T類型是一個引用類型,使用where T : class來做。 實例化跟反省沒關系...