Este artigo foi traduzido por máquina. Coloque o ponteiro do mouse sobre as frases do artigo para ver o texto original. Mais informações.
Tradução
Original
Este tópico ainda não foi avaliado como - Avalie este tópico

Propriedade ReadOnlyCollection<T>.Item

Gets the element at the specified index.

Namespace:  System.Collections.ObjectModel
Assembly:  mscorlib (em mscorlib.dll)
public T this[
	int index
] { get; }

Parâmetros

index
Tipo: System.Int32
O índice baseado em zero do elemento para obter.

Valor de propriedade

Tipo: T
O elemento no índice especificado.

Implementações

IReadOnlyList<T>.Item
ExceçãoCondição
ArgumentOutOfRangeException

indexé menor que zero.

-ou-

indexé igual ou maior que Count.

Essa propriedade fornece a capacidade de acessar um elemento específico da coleção usando a seguinte sintaxe C#: myCollection[index] (myCollection(index) em Visual Basic).

O idioma C# usa o Este palavra-chave para definir os indexadores em vez de implementar a Item propriedade. Implementa o Visual Basic Item como uma propriedade padrão, que fornece a mesma funcionalidade de indexação.

Como recuperar o valor desta propriedade é uma operação de O(1).

O exemplo de código a seguir demonstra vários membros na ReadOnlyCollection<T> classe. O exemplo de código cria uma List<T> de strings e adiciona quatro nomes dinosaur a ela. O exemplo de código, em seguida, empacota a lista em um ReadOnlyCollection<T>.

Depois de demonstrar a Count, Contains, Item, e IList.IndexOf membros, o exemplo de código mostra que o ReadOnlyCollection<T> é apenas um invólucro para o original List<T> , adicionando um novo item para o List<T> e exibir o conteúdo da ReadOnlyCollection<T>.

Finalmente, o exemplo de código cria uma matriz maior do que a coleção e usa o CopyTo método para inserir os elementos da coleção no meio da matriz.


using System;
using System.Collections.Generic;
using System.Collections.ObjectModel;

public class Example
{
    public static void Main()
    {
        List<string> dinosaurs = new List<string>();

        dinosaurs.Add("Tyrannosaurus");
        dinosaurs.Add("Amargasaurus");
        dinosaurs.Add("Deinonychus");
        dinosaurs.Add("Compsognathus");

        ReadOnlyCollection<string> readOnlyDinosaurs = 
            new ReadOnlyCollection<string>(dinosaurs);

        Console.WriteLine();
        foreach( string dinosaur in readOnlyDinosaurs )
        {
            Console.WriteLine(dinosaur);
        }

        Console.WriteLine("\nCount: {0}", readOnlyDinosaurs.Count);

        Console.WriteLine("\nContains(\"Deinonychus\"): {0}", 
            readOnlyDinosaurs.Contains("Deinonychus"));

        Console.WriteLine("\nreadOnlyDinosaurs[3]: {0}", 
            readOnlyDinosaurs[3]);

        Console.WriteLine("\nIndexOf(\"Compsognathus\"): {0}", 
            readOnlyDinosaurs.IndexOf("Compsognathus"));

        Console.WriteLine("\nInsert into the wrapped List:");
        Console.WriteLine("Insert(2, \"Oviraptor\")");
        dinosaurs.Insert(2, "Oviraptor");

        Console.WriteLine();
        foreach( string dinosaur in readOnlyDinosaurs )
        {
            Console.WriteLine(dinosaur);
        }

        string[] dinoArray = new string[readOnlyDinosaurs.Count + 2];
        readOnlyDinosaurs.CopyTo(dinoArray, 1);

        Console.WriteLine("\nCopied array has {0} elements:", 
            dinoArray.Length);
        foreach( string dinosaur in dinoArray )
        {
            Console.WriteLine("\"{0}\"", dinosaur);
        }
    }
}

/* This code example produces the following output:

Tyrannosaurus
Amargasaurus
Deinonychus
Compsognathus

Count: 4

Contains("Deinonychus"): True

readOnlyDinosaurs[3]: Compsognathus

IndexOf("Compsognathus"): 3

Insert into the wrapped List:
Insert(2, "Oviraptor")

Tyrannosaurus
Amargasaurus
Oviraptor
Deinonychus
Compsognathus

Copied array has 7 elements:
""
"Tyrannosaurus"
"Amargasaurus"
"Oviraptor"
"Deinonychus"
"Compsognathus"
""
 */


.NET Framework

Com suporte em: 4.5, 4, 3.5, 3.0, 2.0

.NET Framework Client Profile

Com suporte em: 4, 3.5 SP1

Biblioteca de Classes Portátil

Com suporte em: Biblioteca de Classes Portátil

.NET para aplicativos da Windows Store

Com suporte em: Windows 8

Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Função Server Core sem suporte), Windows Server 2008 R2 (Função Server Core com suporte com o SP1 ou posterior, Itanium sem suporte)

O .NET Framework não oferece suporte a todas as versões de cada plataforma. Para obter uma lista das versões com suporte, consulte .Requisitos de sistema do NET Framework.
Isso foi útil para você?
(1500 caracteres restantes)

Contribuições da comunidade

ADICIONAR
© 2013 Microsoft. Todos os direitos reservados.