2011-04-03 71 views

回答

5

您需要先分配數組,然後再分配數組中的項。

string[] value = new string[3]; 

如果你想動態地添加項目,並根據需要調整它,你可能會更好使用通用列表,例如。

var values = new List<string>(); 
for(int i = 0; i < 3; i++) 
{ 
    values.Add(""); // or values.Add(String.Empty); 
} 
+0

謝謝!我忘了怎麼做:( – 2011-04-03 15:59:59

2

克里斯的已經回答了,我想補充一點,你通常希望做到以下幾點:

string[] value = new string[3]; 
for (int i=0; i<value.Length; i++) 
{ 
    value[i]=""; 
} 
+0

+1!也謝謝!其實我這樣做:string [] value = new string [maxarray]; for(int i = 0; i 2011-04-03 16:09:39

+1

被做:1)使用value.Length更清晰,然後一些硬編碼值(或另一個變量應該保持長度(但可能不會在以後的時間由於代碼更改)2)我不確定是否仍然是這種情況,但上次我檢查JIT是更好地優化此代碼時,該變量檢查value.Length而不是其他一些參數。這是因爲這被認爲是一種模式,其中變量不能超出數組範圍,所以數組訪問不需要範圍檢查。 – Grizzly 2011-04-03 16:18:38