Übergeben von Arrays als Parameter (C#-Programmierhandbuch)
Aktualisiert: November 2007
Arrays können als Parameter an Methoden übergeben werden. Da Arrays Verweistypen sind, kann die Methode den Wert der Elemente ändern.
Übergeben von eindimensionalen Arrays als Parameter
Sie können ein initialisiertes eindimensionales Array an eine Methode übergeben. Beispiel:
PrintArray(theArray);
Die in dieser Zeile aufgerufene Methode könnte z. B. folgendermaßen definiert sein:
void PrintArray(int[] arr)
{
// method code
}
Darüber hinaus kann ein neues Array in einem Schritt initialisiert und übergeben werden. Beispiele:
PrintArray(new int[] { 1, 3, 5, 7, 9 });
Beispiel
Im folgenden Beispiel wird ein Zeichenfolgenarray initialisiert und als Parameter an die PrintArray-Methode übergeben, in der die Elemente angezeigt werden:
class ArrayClass
{
static void PrintArray(string[] arr)
{
for (int i = 0; i < arr.Length; i++)
{
System.Console.Write(arr[i] + "{0}", i < arr.Length - 1 ? " " : "");
}
System.Console.WriteLine();
}
static void Main()
{
// Declare and initialize an array:
string[] weekDays = { "Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat" };
// Pass the array as a parameter:
PrintArray(weekDays);
}
}
// Output: Sun Mon Tue Wed Thu Fri Sat
In diesem Beispiel wird ein zweidimensionales Array initialisiert und an die PrintArray-Methode übergeben, in der seine Elemente angezeigt werden.
class ArrayClass2D
{
static void PrintArray(int[,] arr)
{
// Display the array elements:
for (int i = 0; i < 4; i++)
{
for (int j = 0; j < 2; j++)
{
System.Console.WriteLine("Element({0},{1})={2}", i, j, arr[i, j]);
}
}
}
static void Main()
{
// Pass the array as a parameter:
PrintArray(new int[,] { { 1, 2 }, { 3, 4 }, { 5, 6 }, { 7, 8 } });
// Keep the console window open in debug mode.
System.Console.WriteLine("Press any key to exit.");
System.Console.ReadKey();
}
}
/* Output:
Element(0,0)=1
Element(0,1)=2
Element(1,0)=3
Element(1,1)=4
Element(2,0)=5
Element(2,1)=6
Element(3,0)=7
Element(3,1)=8
*/
Übergeben von mehrdimensionalen Arrays als Parameter
Sie können ein initialisiertes mehrdimensionales Array an eine Methode übergeben. Angenommen, theArray ist ein zweidimensionales Array:
PrintArray(theArray);
Die in dieser Zeile aufgerufene Methode könnte z. B. folgendermaßen definiert sein:
void PrintArray(int[,] arr)
{
// method code
}
Darüber hinaus kann ein neues Array in einem Schritt initialisiert und übergeben werden. Beispiele:
PrintArray(new int[,] { { 1, 2 }, { 3, 4 }, { 5, 6 }, { 7, 8 } });
// Keep the console window open in debug mode.
System.Console.WriteLine("Press any key to exit.");
System.Console.ReadKey();
Siehe auch
Konzepte
Referenz
Arrays (C#-Programmierhandbuch)
Eindimensionale Arrays (C#-Programmierhandbuch)