2009-05-19 34 views

Trả lời

1

Bạn cũng có thể sử dụng toán tử new giống như với các loại đối tượng khác:

int[] array = new int[5]; 

hay, với một biến:

int[] array = new int[someLength]; 
+7

Đây không phải là khá năng động là nó? –

+0

Tại sao không? Bạn có thể sử dụng một biến thay vì một chữ 5 ở đó. –

+0

khi đã xác định, bạn sẽ cần phải khởi tạo lại mảng để thêm nhiều hơn 5 mục – Natrium

8

Trước tiên hãy tạo một danh sách. Thêm/xóa các mục. Và sau đó ArrayList.ToArray()

Và có mảng của bạn!

3
object foo = Array.CreateInstance(typeof(byte), length); 
21

Tôi muốn thêm vào câu trả lời của Natrium rằng các bộ sưu tập chung cũng hỗ trợ phương thức .ToArray() này.

List<string> stringList = new List<string>(); 
stringList.Add("1"); 
stringList.Add("2"); 
stringList.Add("3"); 
string[] stringArray = stringList.ToArray(); 
+1

Như một lưu ý, chúng hỗ trợ ToArray() vì nội bộ, danh sách chỉ đơn giản bằng cách sử dụng một mảng bất biến và phát triển nó với phân bổ mới khi cần thiết. –

-1

Sử dụng Danh sách chung hoặc ArrayList.

4

Ok vì vậy việc khởi tạo mảng sẽ cho tôi mỗi lần. vì vậy tôi đã dành 10 phút để làm điều này đúng.

static void Main(string[] args) 
    { 
     String[] as1 = new String[] { "Static", "with", "initializer" }; 
     ShowArray("as1", as1); 

     String[] as2 = new String[5]; 
     as2[0] = "Static"; 
     as2[2] = "with"; 
     as2[3] = "initial"; 
     as2[4] = "size"; 
     ShowArray("as2", as2); 

     ArrayList al3 = new ArrayList(); 
     al3.Add("Dynamic"); 
     al3.Add("using"); 
     al3.Add("ArrayList"); 
     //wow! this is harder than it should be 
     String[] as3 = (String[])al3.ToArray(typeof(string)); 
     ShowArray("as3", as3); 

     List<string> gl4 = new List<string>(); 
     gl4.Add("Dynamic"); 
     gl4.Add("using"); 
     gl4.Add("generic"); 
     gl4.Add("list"); 
     //ahhhhhh generic lubberlyness :) 
     String[] as4 = gl4.ToArray(); 
     ShowArray("as4", as4); 
    } 

    private static void ShowArray(string msg, string[] x) 
    { 
     Console.WriteLine(msg); 
     for(int i=0;i<x.Length;i++) 
     { 
      Console.WriteLine("item({0})={1}",i,x[i]); 
     } 
    } 
-1
int[] array = { 1, 2, 3, 4, 5}; 

for (int i=0;i<=array.Length-1 ;i++) { 
    Console.WriteLine(array[i]); 
} 
Các vấn đề liên quan