Ein Array ist eine geordnete Sammlung von Elementen desselben Datentyps. Um auf ein Element in einem Array zuzugreifen, verwenden Sie sowohl den Array-Namen als auch den Offset zwischen dem Element und dem Anfang des Arrays. Es gibt einige wichtige Unterschiede in der Art und Weise, wie Sie C#-Arrays in C# im Vergleich zu Java deklarieren und verwenden.
Eindimensionales Array
Eindimensionales Array speichert eine feste Anzahl von Elementen linear und es ist nur ein Indexwert erforderlich, um jedes Element zu identifizieren. In C# müssen eckige Klammern in einer Array-Deklaration dem Datentyp folgen und können nicht nach dem Variablennamen platziert werden, was in Java zulässig ist. Daher sollten Arrays vom Typ Ganzzahlen mit der folgenden Syntax deklariert werden:
int[] arr1;
Die folgende Deklaration ist in C# nicht gültig:
//int arr2[]; //compile error
Nach der Deklaration eines Arrays können Sie es festlegen Verwenden des neuen Schlüsselworts Size, das mit Java identisch ist. Der folgende Code deklariert eine Array-Referenz:
int[] arr; arr = new int[5]; // create a 5 element integer array
Auf die Elemente in einem eindimensionalen Array kann dann mit derselben Syntax wie in Java zugegriffen werden. Die C#-Array-Indizierung ist ebenfalls nullbasiert. Der folgende Code greift auf das letzte Element im Array oben zu:
System.Console.WriteLine(arr[4]); // access the 5th element
Initialisierung
C#-Array-Elemente können zum Zeitpunkt der Erstellung mit derselben Syntax wie in Java initialisiert werden:
int[] arr2Lines; arr2Lines = new int[5] {1, 2, 3, 4, 5}; Syue.com
Aber in C# muss die Anzahl der Initialisierer im Gegensatz zu Java genau mit der Array-Größe übereinstimmen. Mit dieser Funktion können Sie ein C#-Array in derselben Zeile deklarieren und initialisieren:
int[] arr1Line = {1, 2, 3, 4, 5};
Diese Syntax erstellt ein Array mit einer Größe, die der Anzahl der Initialisierer entspricht.
Initialisierung in einer Programmschleife
Eine andere Möglichkeit, ein Array in C# zu initialisieren, ist die Verwendung einer for-Schleife. Die folgende Schleife setzt jedes Element des Arrays auf Null:
int[] TaxRates = new int[5]; for (int i=0; i< TaxRates.Length; i++) { TaxRates[i] = 0; }
Jagged Array
Sowohl C# als auch Java unterstützen die Erstellung eines gezackten (nicht rechteckigen) Arrays, d. h. jede Zeile enthält Spalten zählen verschiedene Arrays. Im folgenden gezackten Array enthält die erste Zeile beispielsweise vier Elemente, während die zweite Zeile drei Elemente enthält:
nt[][] jaggedArray = new int[2][]; jaggedArray[0] = new int[4]; jaggedArray[1] = new int[3];
Mehrdimensionales Array
Sie können C# verwenden, um regelmäßige mehrdimensionale Arrays zu erstellen , Mehrdimensionale Arrays ähneln Matrizen von Werten desselben Typs. Während sowohl Java als auch C# gezackte Arrays unterstützen, unterstützt C# auch mehrdimensionale Arrays (Arrays von Arrays).
Ein mehrdimensionales rechteckiges Array wird mit der folgenden Syntax deklariert:
int[,] arr2D; // declare the array reference float[,,,] arr4D; // declare the array reference
Nach der Deklaration kann Speicher für das Array wie folgt zugewiesen werden:
arr2D = new int[5,4]; // allocate space for 5 x 4 integers
Dann gilt: Die folgende Syntax kann verwendet werden, um auf die Elemente des Arrays zuzugreifen:
arr2D[4,3] = 906;
Da C#-Arrays nullbasiert sind, setzt diese Zeile das Element in der vierten Zeile und fünften Spalte auf 906.
Initialisierung
Sie können ein mehrdimensionales Array in derselben Anweisung mit einer der folgenden Methoden erstellen, festlegen und initialisieren:
int[,] arr4 = new int [2,3] { {1,2,3}, {4,5,6} }; int[,] arr5 = new int [,] { {1,2,3}, {4,5,6} }; int[,] arr6 = { {1,2,3}, {4,5,6} };
Weitere Artikel zur Definition und Initialisierung verschiedener C#-Arrays finden Sie auf der chinesischen PHP-Website!