terça-feira, 20 de agosto de 2013

Criando indexadores C#

Afinal o que são indexadores em C# ?
Nada mais são do que um array inteligente, podem ser usados tanto em classes como estruturas, vamos à um exemplo:

Vamos criar nosso indexador

//criando a classe
 public class Veiculo
    {        
        private Dictionary<string, string> _parts = new Dictionary<string, string>();      
     
//criando o indexador (o this referecia a classe)
        public string this[string key]
        { 
            get { return _parts[key];}
            set { _parts[key] = value; }
        }

Após instaciar o Veiculo vamos utilizar o indexador

var carro = new Veiculo();
carro["constutora"] = "Honda";
carro["modelo"] = "Civic";
carro["ano"] = "2011";

Vale lembrar que o nome da Key pode ser qualquer um, poderia por exemplo colocar o nome carro["indexer"] = "value";

Se quiser retornar o valor de alguma propriedade indexada basta fazer da seguinte forma

Console.WriteLine("Construtora {0}", carro["construtora"]);

Espero que tenham entendido =P




Nenhum comentário:

Postar um comentário