2010-02-01 103 views
0

所以我一直想弄清楚如何用C#創建的對象填充數組。我發現這個代碼示例解釋了一些我需要做的事情。從C中的構造函數創建一個數組#

for (int i = 0;i<empArray.Length;i++) 
     { 
      empArray[i] = new Employee(i+5); 
     } 

但是,如果我將多個參數傳入我的構造函數會發生什麼?這看起來有什麼不同嗎?像empArray [i] =新員工(i,j,k);等等。如果是的話,如何將這些對象從陣列中讀出來,說出控制檯。

Console.WriteLine(empArray[i]) 

做的竅門,如果對象有多個變量傳入它,或者我會需要一個多維數組?我對所有問題表示歉意,只是對C#有點新鮮感。

回答

2

傳遞給構造函數的參數只是對象初始化自身的信息。無論您傳入多少個參數,只有一個Employee對象會出現,並且該對象將被放入empArray[i]

能總是訪問使用empArray[<index>]Employee對象,其中指數是一個整數,其中0 = <索引< empArray.Length。

Console.WriteLine將一個字符串或任何對象與一個ToString()方法就可以了。因此,如果Employee對象實現ToString(),則Console.WriteLine(empArray[i])將起作用。你可能會實現ToString()這樣的:

public string ToString() 
{ 
    return String.Format("{0} {1}", this.FirstName, this.LastName); 
} 
+0

如果我想訪問的從empArray類方法,我只想做empArray [I] .SomeMethod一個? – LeSabo 2010-02-01 17:54:29

+0

完全正確! 'empArray [i]'返回索引爲'i'的對象,所以你可以把它當作你直接處理那個對象。 – Aaron 2010-02-01 18:11:40

+0

對,非常感謝您的幫助,謝謝! – LeSabo 2010-02-01 18:26:11

1

是的,這是行得通的。在聲明數組[i]中,i用作數組中位置的引用,並且與該對象的實際內容無關。

相關問題