quarta-feira, 9 de julho de 2008
Utilizando uma lista ordenada no C# - SortedList
Para utilizar uma lista ordenada no C#, basta utilizar a classe SortedList.
Sempre que for adicionar um novo item à lista devemos informar uma chave (Object key) e um valor (Object value):
=>.Add(Key, Value) = Para adicionar novos itens
=> Key = Pode ser qualquer objeto. Essa será a informação utilizada para a organização da lista.
=> Value = Esse campo armazena o objeto cuja lista precisa ser ordenada.
// (...)
SortedList lstListaOrdenada = new SortedList();
// Monta uma lista ordenada
foreach (Disciplina disciplina in lstDisciplinas)
{
lstListaOrdenada.Add(disciplina.ObterNomeDisciplina(), disciplina);
}
// (...)
// Acessa os objetos da lista ordenada
foreach (DictionaryEntry linha in lstListaOrdenada)
{
Disciplina disciplina = (Disciplina)linha.Value;
// (...processa cada uma dos objetos...)
}
// (...)
Uma outra coisa interessante nesse tipo de lista é que, quando quisermos encontrar o valor correspondente a uma chave, não é necessário pesquisar toda a lista, bastando então acessar diretamente o índice informando a chave, por exemplo:
disciplina = lstListaOrdenada['Matemática'];
Sempre que for adicionar um novo item à lista devemos informar uma chave (Object key) e um valor (Object value):
=>
=> Key = Pode ser qualquer objeto. Essa será a informação utilizada para a organização da lista.
=> Value = Esse campo armazena o objeto cuja lista precisa ser ordenada.
// (...)
SortedList lstListaOrdenada = new SortedList();
// Monta uma lista ordenada
foreach (Disciplina disciplina in lstDisciplinas)
{
lstListaOrdenada.Add(disciplina.ObterNomeDisciplina(), disciplina);
}
// (...)
// Acessa os objetos da lista ordenada
foreach (DictionaryEntry linha in lstListaOrdenada)
{
Disciplina disciplina = (Disciplina)linha.Value;
// (...processa cada uma dos objetos...)
}
// (...)
Uma outra coisa interessante nesse tipo de lista é que, quando quisermos encontrar o valor correspondente a uma chave, não é necessário pesquisar toda a lista, bastando então acessar diretamente o índice informando a chave, por exemplo:
disciplina = lstListaOrdenada['Matemática'];
Referência: MSDN
Marcadores: CSharp, Desenvolvimento, Dicas, DotNet
Assinar Postagens [Atom]
Postar um comentário