Dieser Artikel wurde maschinell übersetzt. Wenn Sie die englische Version des Artikels anzeigen möchten, aktivieren Sie das Kontrollkästchen Englisch. Sie können den englischen Text auch in einem Popupfenster anzeigen, indem Sie den Mauszeiger über den Text bewegen.
Übersetzung
Englisch

Array.SetValue-Methode: (Object, Int32[])

 

Veröffentlicht: Oktober 2016

Legt das Element an der angegebenen Position des mehrdimensionalen Array auf einen Wert fest. Die Indizes werden als ein Array von 32-Bit-Ganzzahlen angegeben.

Namespace:   System
Assembly:  mscorlib (in mscorlib.dll)

public void SetValue(
	object value,
	params int[] indices
)

Parameter

value
Type: System.Object

Der neue Wert für das angegebene Element.

indices
Type: System.Int32[]

Ein eindimensionales Array von 32-Bit-Ganzzahlen, das die Indizes darstellt, die die Position des festzulegenden Elements angeben.

Exception Condition
ArgumentNullException

indices ist null.

ArgumentException

Die Anzahl von Dimensionen im aktuellen Array ist nicht mit der Anzahl von Elementen in indices identisch.

InvalidCastException

value kann nicht in den Elementtyp des aktuellen Array umgewandelt werden.

IndexOutOfRangeException

Jedes Element in indices liegt außerhalb des Bereichs der gültigen Indizes für die entsprechende Dimension des aktuellen Array.

Die Anzahl der Elemente im indices muss gleich der Anzahl der Dimensionen in der Array. Alle Elemente in der indices Array geben muss zusammen die Position des gewünschten Elements des mehrdimensionalen Array.

Die GetLowerBound und GetUpperBound Methoden können bestimmen, ob die Werte in der indices Array ist außerhalb des gültigen Bereichs.

Weitere Informationen zu Konvertierungen finden Sie unter Convert.

Diese Methode ist ein o(1)-Vorgang.

System_CAPS_noteHinweis

Wenn SetValue zugewiesen null auf ein Element eines Arrays von Werttypen, werden alle Felder des Elements auf 0 (null) initialisiert. Der Wert des Elements ist kein null-Verweis und kann nicht durch Suchen nach einem null-Verweis gefunden werden.

Im folgenden Codebeispiel wird veranschaulicht, wie zum Festlegen und Abrufen eines bestimmten Werts in ein eindimensionales oder mehrdimensionales Array.

using System;

public class SamplesArray  {

   public static void Main()  {

      // Creates and initializes a one-dimensional array.
      String[] myArr1 = new String[5];

      // Sets the element at index 3.
      myArr1.SetValue( "three", 3 );
      Console.WriteLine( "[3]:   {0}", myArr1.GetValue( 3 ) );


      // Creates and initializes a two-dimensional array.
      String[,] myArr2 = new String[5,5];

      // Sets the element at index 1,3.
      myArr2.SetValue( "one-three", 1, 3 );
      Console.WriteLine( "[1,3]:   {0}", myArr2.GetValue( 1, 3 ) );


      // Creates and initializes a three-dimensional array.
      String[,,] myArr3 = new String[5,5,5];

      // Sets the element at index 1,2,3.
      myArr3.SetValue( "one-two-three", 1, 2, 3 );
      Console.WriteLine( "[1,2,3]:   {0}", myArr3.GetValue( 1, 2, 3 ) );


      // Creates and initializes a seven-dimensional array.
      String[,,,,,,] myArr7 = new String[5,5,5,5,5,5,5];

      // Sets the element at index 1,2,3,0,1,2,3.
      int[] myIndices = new int[7] { 1, 2, 3, 0, 1, 2, 3 };
      myArr7.SetValue( "one-two-three-zero-one-two-three", myIndices );
      Console.WriteLine( "[1,2,3,0,1,2,3]:   {0}", myArr7.GetValue( myIndices ) );

   }

}


/* 
This code produces the following output.

[3]:   three
[1,3]:   one-three
[1,2,3]:   one-two-three
[1,2,3,0,1,2,3]:   one-two-three-zero-one-two-three

*/

Universelle Windows-Plattform
Verfügbar seit 8
.NET Framework
Verfügbar seit 1.1
Portierbare Klassenbibliothek
Unterstützt in: portierbare .NET-Plattformen
Silverlight
Verfügbar seit 2.0
Windows Phone Silverlight
Verfügbar seit 7.0
Windows Phone
Verfügbar seit 8.1
Zurück zum Anfang
Anzeigen: