2010-10-14 90 views
0

我有一個數組變量(字符串類型)。它包含一定的否。的項目,我不知道他們有多少。 我需要爲許多號碼運行一個循環。該數組包含。我嘗試了LBound和UBound循環,但它說我的數組不是系統數組。 我如何知道我的數組包含多少項?數組變量中的項目總數

感謝 Furqan

回答

5

你可以使用數組對象的Length財產。

MSDN(Array.Length性):

獲取一個32位整數,它表示元素的在陣列的所有維度的總數。

閱讀關於arrays in VB.NETArray類以更好地理解VB.NET和.NET框架中的數組。


更新:

然而,對於遍歷數組,你只需要使用一個For Each環路(作爲一個數組就像.NET任何其他集合處理) - 這樣一來,就不會犯與數組邊界和關閉任何愚蠢的錯誤通過的:

For Each item As arrayItemType in MyArray 
    ' do stuff with item 
Next 

參見this頁的例子。

1

你看看長度

要在第一時間拿到維的項目數:arrayName.GetLength(0)

如果您需要的索引,使用GetUpperBound(0)

一些有用的例子here

0

如果編譯器告訴你你的變量不是一個系統數組,那麼很有可能它不是一個數組。如果它不是一個數組,你將無法通過任何方式獲得它的邊界。

檢查本地窗口中的變量並驗證您的變量是您認爲是的類型。畢竟它可能不是一個數組。

1

就像Oded說的那樣,你可以使用數組的長度 - 索引。這將是這個樣子:

Dim data As String() = {"one", "two", "three", "four"} 

    For i = 0 To data.Length - 1 

     Console.WriteLine(data(i)) 

    Next 

如果你只是想你的循環陣列中的所有字符串,您可以使用每個以及:

For Each s As String In data 

     Console.WriteLine(s) 

    Next 
+1

+1提示'對於Each' – Oded 2010-10-14 18:47:09