Oi Fernando, tudo bem?
e se no meio desses métodos tenho um ou mais métodos que tem parâmetros tipo "string", por exemplo ? Como faço para usar esses métodos ?
Não tem problema. Você pode misturar o tipo genérico T com tipos definidos, como o string que você citou. Por exemplo:
public void Adicionar(T item)
{
....
}
Você poderia ter um método Adicionar com um parâmetro novo, do tipo string. Imagine que um método para adicionar valores em uma classe Dicionario, que representa um dicionário de dados, onde:
- o parâmetro chave é sempre um código do tipo string
- o parâmetro valor pode ser de qualquer tipo (int, string, object, etc.)
public class Dicionario<T>
{
public void Adicionar(string chave, T valor)
{
....
}
}
Então você poderia declarar tipos diferentes de dicionário:
Dicionario<string> estados = new Dicionario<string>();
estados.Adicionar("SC", "Santa Catarina");
estados.Adicionar("SP", "São Paulo");
estados.Adicionar("SE", "Sergipe");
Dicionario<decimal> tarifas = new Dicionario<decimal>();
tarifas.Adicionar("metrô", 4.50m);
tarifas.Adicionar("ônibus", 4.00m);
tarifas.Adicionar("trem", 3.00m);
Dicionario<bool> configuracoes = new Dicionario<bool>();
configuracoes.Adicionar("freio ABS", true);
configuracoes.Adicionar("ar condicionado", false);
configuracoes.Adicionar("vidro elétrico", true);