(0) exportieren Drucken
Alle erweitern

Array.SetValue-Methode (Object, Int64[])

Aktualisiert: November 2007

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

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

[ComVisibleAttribute(false)]
public void SetValue(
	Object value,
	params long[] indices
)
/** @attribute ComVisibleAttribute(false) */
public void SetValue(
	Object value,
	long[] indices
)
public function SetValue(
	value : Object, 
	... indices : long[]
)

Parameter

value
Typ: System.Object
Der neue Wert für das angegebene Element.
indices
Typ: System.Int64[]
Ein eindimensionales Array von 64-Bit-Ganzzahlen, das die Indizes darstellt, die die Position des festzulegenden Elements angeben.

AusnahmeBedingung
ArgumentNullException

indices ist null.

ArgumentException

Die Anzahl der Dimensionen im aktuellen Array ist nicht gleich der Anzahl der Elemente von indices.

InvalidCastException

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

ArgumentOutOfRangeException

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

Die Anzahl der Elemente von indices muss gleich der Anzahl der Dimensionen des Array sein. Alle Elemente des indices-Arrays müssen zusammen die Position des gewünschten Elements im mehrdimensionalen Array angeben.

Mit der GetLowerBound-Methode und der GetUpperBound-Methode kann bestimmt werden, ob einer der Werte im indices-Array außerhalb der zulässigen Grenzen liegt.

Weitere Informationen über Konvertierungen finden Sie unter Convert.

Diese Methode ist eine O(1)-Operation.

zkekac1b.alert_note(de-de,VS.90).gifHinweis:

Wenn SetValue verwendet wird, um einem Element eines Arrays von Werttypen null zuzuweisen, werden alle Felder des Elements mit 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 ein spezifischer Wert in einem eindimensionalen oder mehrdimensionalen Array festgelegt und abgerufen wird.

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

*/



import System.*;

public class SamplesArray
{
    public static void main(String[] args)
    {
        // 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[] = { 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));
    } //main 
} //SamplesArray
/* 
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

*/


Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98

.NET Framework und .NET Compact Framework unterstützen nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen für .NET Framework.

.NET Framework

Unterstützt in: 3.5, 3.0, 2.0, 1.1

Community-Beiträge

HINZUFÜGEN
Anzeigen:
© 2014 Microsoft