Collection<T>.Item[Int32] Propriedade

Definição

Obtém ou define o elemento no índice especificado.

C#
public T this[int index] { get; set; }

Parâmetros

index
Int32

O índice com base em zero do elemento a ser obtido ou definido.

Valor da propriedade

T

O elemento no índice especificado.

Implementações

Exceções

index é menor que zero.

- ou -

index é igual a ou maior que Count.

Exemplos

O exemplo de código a seguir demonstra muitas das propriedades e métodos de Collection<T>. O exemplo de código cria uma coleção de cadeias de caracteres, usa o Add método para adicionar várias cadeias de caracteres, exibe o Counte lista as cadeias de caracteres. O exemplo usa o IndexOf método para localizar o índice de uma cadeia de caracteres e o Contains método para determinar se uma cadeia de caracteres está na coleção. O exemplo insere uma cadeia de caracteres usando o Insert método e recupera e define cadeias de caracteres usando a propriedade padrão Item[] (o indexador em C#). O exemplo remove cadeias de caracteres por identidade de cadeia de caracteres usando o Remove método e por índice usando o RemoveAt método . Por fim, o Clear método é usado para limpar todas as cadeias de caracteres da coleção.

C#
using System;
using System.Collections.Generic;
using System.Collections.ObjectModel;

public class Demo
{
    public static void Main()
    {
        Collection<string> dinosaurs = new Collection<string>();

        dinosaurs.Add("Psitticosaurus");
        dinosaurs.Add("Caudipteryx");
        dinosaurs.Add("Compsognathus");
        dinosaurs.Add("Muttaburrasaurus");

        Console.WriteLine("{0} dinosaurs:", dinosaurs.Count);
        Display(dinosaurs);

        Console.WriteLine("\nIndexOf(\"Muttaburrasaurus\"): {0}",
            dinosaurs.IndexOf("Muttaburrasaurus"));

        Console.WriteLine("\nContains(\"Caudipteryx\"): {0}",
            dinosaurs.Contains("Caudipteryx"));

        Console.WriteLine("\nInsert(2, \"Nanotyrannus\")");
        dinosaurs.Insert(2, "Nanotyrannus");
        Display(dinosaurs);

        Console.WriteLine("\ndinosaurs[2]: {0}", dinosaurs[2]);

        Console.WriteLine("\ndinosaurs[2] = \"Microraptor\"");
        dinosaurs[2] = "Microraptor";
        Display(dinosaurs);

        Console.WriteLine("\nRemove(\"Microraptor\")");
        dinosaurs.Remove("Microraptor");
        Display(dinosaurs);

        Console.WriteLine("\nRemoveAt(0)");
        dinosaurs.RemoveAt(0);
        Display(dinosaurs);

        Console.WriteLine("\ndinosaurs.Clear()");
        dinosaurs.Clear();
        Console.WriteLine("Count: {0}", dinosaurs.Count);
    }

    private static void Display(Collection<string> cs)
    {
        Console.WriteLine();
        foreach( string item in cs )
        {
            Console.WriteLine(item);
        }
    }
}

/* This code example produces the following output:

4 dinosaurs:

Psitticosaurus
Caudipteryx
Compsognathus
Muttaburrasaurus

IndexOf("Muttaburrasaurus"): 3

Contains("Caudipteryx"): True

Insert(2, "Nanotyrannus")

Psitticosaurus
Caudipteryx
Nanotyrannus
Compsognathus
Muttaburrasaurus

dinosaurs[2]: Nanotyrannus

dinosaurs[2] = "Microraptor"

Psitticosaurus
Caudipteryx
Microraptor
Compsognathus
Muttaburrasaurus

Remove("Microraptor")

Psitticosaurus
Caudipteryx
Compsognathus
Muttaburrasaurus

RemoveAt(0)

Caudipteryx
Compsognathus
Muttaburrasaurus

dinosaurs.Clear()
Count: 0
 */

Comentários

Collection<T> null aceita como um valor válido para tipos de referência e permite elementos duplicados.

Esta propriedade fornece a capacidade de acessar um elemento específico na coleção usando a seguinte sintaxe: myCollection[index].

A linguagem C# usa esse palavra-chave para definir os indexadores em vez de implementar a Item[] propriedade . O Visual Basic implementa Item[] como uma propriedade padrão, que fornece a mesma funcionalidade de indexação.

Recuperar o valor dessa propriedade é uma operação O(1) ; definir a propriedade também é uma operação O(1).

Notas aos Herdeiros

Classes derivadas podem substituir SetItem(Int32, T) para alterar o comportamento da configuração dessa propriedade.

Aplica-se a

Produto Versões
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 2.0, 2.1
UWP 10.0

Confira também