C# Array

, ..., numbers

Das Deklarieren einer Array-Variable deklariert nicht einzelne Variablen nacheinander wie number0, number1, ..., number99; stattdessen deklariert man eine Variable wie numbers und verwendet dann numbers

Alle Arrays bestehen aus zusammenhängenden Speicherstellen. Die niedrigste Adresse entspricht dem ersten Element, und die höchste Adresse entspricht dem letzten Element.

C# 中的数组

Arrays deklarieren

In C# können Sie ein Array mit der folgenden Syntax deklarieren:

datatype[] arrayName;

wobei,

  • datatypeWird verwendet, um den Typ der im Array gespeicherten Elemente anzugeben.
  • [ ]Gibt den Rang (die Dimension) des Arrays an. Der Rang gibt die Größe des Arrays an.
  • arrayNameGibt den Namen des Arrays an.

Zum Beispiel:

double[] balance;

Arrays initialisieren

Das Deklarieren eines Arrays initialisiert das Array nicht im Speicher. Wenn Sie eine Array-Variable initialisieren, können Sie dem Array Werte zuweisen.

Arrays sind Verweistypen, daher müssen SienewSchlüsselwort verwenden, um eine Instanz eines Arrays zu erstellen.

Zum Beispiel:

double[] balance = new double[10];

Zuweisung zum Array

Sie können einem einzelnen Array-Element einen Wert zuweisen, indem Sie die Indexnummer verwenden, zum Beispiel:

double[] balance = new double[10];
balance[0] = 4500.0;

Sie können dem Array Werte zuweisen, während Sie das Array deklarieren, zum Beispiel:

double[] balance = { 2340.0, 4523.69, 3421.0};

Sie können auch ein Array erstellen und initialisieren, zum Beispiel:

int [] marks = new int[5]  { 99,  98, 92, 97, 95};

In den oben genannten Fällen können Sie auch die Größe des Arrays weglassen, zum Beispiel:

int [] marks = new int[]  { 99,  98, 92, 97, 95};

Sie können auch eine Array-Variable einer anderen Ziel-Array-Variablen zuweisen. In diesem Fall zeigen das Ziel und die Quelle auf denselben Speicherort:

int [] marks = new int[]  { 99,  98, 92, 97, 95};
int[] score = marks;

Wenn Sie ein Array erstellen, initialisiert der C#-Compiler jedes Array-Element implizit mit einem Standardwert, der auf dem Array-Typ basiert. Beispielsweise werden alle Elemente eines int-Arrays mit 0 initialisiert.

Zugriff auf Array-Elemente

Auf Elemente wird über einen indizierten Arraynamen zugegriffen. Dazu wird der Index des Elements in eckigen Klammern nach dem Arraynamen platziert. Zum Beispiel:

double salary = balance[9];

Nachfolgend finden Sie ein Beispiel, das die drei oben genannten Konzepte verwendet, nämlich das Deklarieren, Zuweisen und Zugreifen auf Arrays:

Beispiel

using System;
namespace ArrayApplication
{
   class MyArray
   {
      static void Main(string[] args)
      {
         int []  n = new int[10]; /* n ist ein Array mit 10 Ganzzahlen */
         int i,j;


         /* Elemente im Array n initialisieren */        
         for ( i = 0; i < 10; i++ )
         {
            n[ i ] = i + 100;
         }

         /* den Wert jedes Array-Elements ausgeben */
         for (j = 0; j < 10; j++ )
         {
            Console.WriteLine("Element[{0}] = {1}", j, n[j]);
         }
         Console.ReadKey();
      }
   }
}

Wenn der obige Code kompiliert und ausgeführt wird, erzeugt er das folgende Ergebnis:

Element[0] = 100
Element[1] = 101
Element[2] = 102
Element[3] = 103
Element[4] = 104
Element[5] = 105
Element[6] = 106
Element[7] = 107
Element[8] = 108
Element[9] = 109

VerwendungforeachSchleifen

Im vorherigen Beispiel haben wir eine for-Schleife verwendet, um auf jedes Array-Element zuzugreifen. Sie können auch eine foreachAnweisung verwenden, um ein Array zu durchlaufen.

Das folgende Beispiel verwendet foreach, um ein Array zu durchlaufen:

Beispiel

using System;

namespace ArrayApplication
{
   class MyArray
   {
      static void Main(string[] args)
      {
         int []  n = new int[10]; /* n ist ein Array mit 10 Ganzzahlen */


         /* Elemente im Array n initialisieren */        
         for ( int i = 0; i < 10; i++ )
         {
            n[i] = i + 100;
         }

         /* den Wert jedes Array-Elements ausgeben */
         foreach (int j in n )
         {
            int i = j-100;
            Console.WriteLine("Element[{0}] = {1}", i, j);
         }
         Console.ReadKey();
      }
   }
}

Wenn der obige Code kompiliert und ausgeführt wird, erzeugt er das folgende Ergebnis:

Element[0] = 100
Element[1] = 101
Element[2] = 102
Element[3] = 103
Element[4] = 104
Element[5] = 105
Element[6] = 106
Element[7] = 107
Element[8] = 108
Element[9] = 109

C#-Array-Details

In C# sind Arrays sehr wichtig, und es gibt weitere Details, die Sie verstehen müssen. Im Folgenden sind einige wichtige arraybezogene Konzepte aufgeführt, die C#-Programmierer klar verstehen müssen:

KonzepteBeschreibung
Mehrdimensionale ArraysC# unterstützt mehrdimensionale Arrays. Die einfachste Form eines mehrdimensionalen Arrays ist das zweidimensionale Array.
Verzweigtes ArrayC# unterstützt verzweigte Arrays, also Arrays von Arrays.
Arrays an Funktionen übergebenSie können einen Zeiger auf ein Array an eine Funktion übergeben, indem Sie den Array-Namen ohne Index angeben.
ParameterarrayDies wird häufig verwendet, um eine unbekannte Anzahl von Parametern an eine Funktion zu übergeben.
Array-KlasseIm System-Namespace definiert, ist es die Basisklasse für alle Arrays und bietet verschiedene Eigenschaften und Methoden für Arrays.
Weitere Erweiterungen