(0) exportieren Drucken
Alle erweitern
Dieser Artikel wurde maschinell übersetzt. Bewegen Sie den Mauszeiger über die Sätze im Artikel, um den Originaltext anzuzeigen. Weitere Informationen
Übersetzung
Original
Dieser Artikel wurde noch nicht bewertet - Dieses Thema bewerten.

Array.CreateInstance-Methode (Type, Int32)

Erstellt ein eindimensionales Array der angegebenen Länge und vom angegebenen Type mit nullbasierter Indizierung.

Namespace:  System
Assembly:  mscorlib (in mscorlib.dll)
public static Array CreateInstance(
	Type elementType,
	int length
)

Parameter

elementType
Typ: System.Type
Der Type des zu erstellenden Array.
length
Typ: System.Int32
Die Größe des zu erstellenden Array.

Rückgabewert

Typ: System.Array
Ein neues eindimensionales Array der angegebenen Länge und vom angegebenen Type mit nullbasierter Indizierung.
AusnahmeBedingung
ArgumentNullException

elementType ist null.

ArgumentException

elementType ist kein gültiger Type.

NotSupportedException

elementType wird nicht unterstützt. Beispielsweise wird Void nicht unterstützt.

- oder -

elementType ist ein offener generischer Typ.

ArgumentOutOfRangeException

length ist kleiner als 0 (null).

Im Unterschied zu den meisten anderen Klassen stellt Array anstelle öffentlicher Konstruktoren die CreateInstance-Methode bereit, um Zugriff mit spätem Binden zu ermöglichen.

Elemente mit Referenztyp werden mit null initialisiert. Elemente mit Werttyp werden mit 0 initialisiert.

Diese Methode ist ein O(n)-Vorgang, wobei nlength ist.

Im folgenden Codebeispiel wird veranschaulicht, wie ein eindimensionales Array erstellt und initialisiert wird.


using System;
public class SamplesArray  {

   public static void Main()  {

      // Creates and initializes a one-dimensional Array of type Int32.
      Array my1DArray=Array.CreateInstance( typeof(Int32), 5 );
      for ( int i = my1DArray.GetLowerBound(0); i <= my1DArray.GetUpperBound(0); i++ )
         my1DArray.SetValue( i+1, i );

      // Displays the values of the Array.
      Console.WriteLine( "The one-dimensional Array contains the following values:" );
      PrintValues( my1DArray );
   }


   public static void PrintValues( Array myArr )  {
      System.Collections.IEnumerator myEnumerator = myArr.GetEnumerator();
      int i = 0;
      int cols = myArr.GetLength( myArr.Rank - 1 );
      while ( myEnumerator.MoveNext() )  {
         if ( i < cols )  {
            i++;
         } else  {
            Console.WriteLine();
            i = 1;
         }
         Console.Write( "\t{0}", myEnumerator.Current );
      }
      Console.WriteLine();
   }
}
/*
This code produces the following output.

The one-dimensional Array contains the following values:
    1    2    3    4    5
*/


.NET Framework

Unterstützt in: 4.5, 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Unterstützt in: 4, 3.5 SP1

Portable Klassenbibliothek

Unterstützt in: Portable Klassenbibliothek

Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core-Rolle wird nicht unterstützt), Windows Server 2008 R2 (Server Core-Rolle wird mit SP1 oder höher unterstützt; Itanium wird nicht unterstützt)

Es werden nicht alle Versionen sämtlicher Plattformen von .NET Framework unterstützt.. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen für .NET Framework.
Fanden Sie dies hilfreich?
(1500 verbleibende Zeichen)
Vielen Dank für Ihr Feedback.

Community-Beiträge

HINZUFÜGEN
Anzeigen:
© 2014 Microsoft. Alle Rechte vorbehalten.