Este artigo foi traduzido por máquina. Para visualizar o arquivo em inglês, marque a caixa de seleção Inglês. Você também pode exibir o texto Em inglês em uma janela pop-up, movendo o ponteiro do mouse sobre o texto.
Tradução
Inglês

Método Array.SetValue (Object, Int32, Int32)

 

Define um valor como o elemento na posição especificada no Array bidimensional. Os índices são especificados como inteiro de 32 bits.

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

public void SetValue(
	object value,
	int index1,
	int index2
)

Parâmetros

value
Type: System.Object

O novo valor do elemento especificado.

index1
Type: System.Int32

Um inteiro de 32 bits que representa o índice da primeira dimensão do elemento Array a ser definido.

index2
Type: System.Int32

Um inteiro de 32 bits que representa o índice da segunda dimensão do elemento Array a ser definido.

Exception Condition
ArgumentException

O Array atual não tem exatamente duas dimensões.

InvalidCastException

value não pode ser convertido no tipo de elemento do Array atual.

IndexOutOfRangeException

index1 ou index2 está fora do intervalo de índices válidos para a dimensão correspondente do Arrayatual.

Os métodos GetLowerBound e GetUpperBound podem determinar se alguns dos índices está fora dos limites.

Para obter mais informações sobre conversões, consulte Convert.

Este método é uma operação O(1).

System_CAPS_noteObservação

Caso SetValue seja usado para atribuir null a um elemento de uma matriz de tipos de valor, todos os campos do elemento são inicializados em zero. O valor do elemento não é uma referência nula, e não pode ser encontrada procurando uma referência nula.

O exemplo de código a seguir demonstra como definir e obter um valor específico em uma matriz unidimensional ou multidimensional.

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

*/

.NET Framework
Disponível desde 1.1
Retornar ao início
Mostrar: