Removendo itens iguais de um ArrayList (csharp)


Este algoritmo só é válido para um ArrayList com itens do tipo Int32.
Primeiramente devemos ordenar o ArrayList para simplificar a busca de itens iguais. Para isso basta utilizar o método Sort. Depois, utilizando um simples laço ‘for’ percorremos o vetor em busca das repetições. Veja o código abaixo e você entenderá.

        ArrayList vet = new ArrayList();
        vet.Add(9);
        vet.Add(5);
        vet.Add(1);
        vet.Add(7);
        vet.Add(2);
        vet.Add(10);
        vet.Add(9);
        vet.Add(7);
        vet.Add(7);
        vet.Add(6);
        vet.Add(10);
        vet.Add(8);
        vet.Add(4);
        vet.Add(1);
        vet.Add(9);
        // ordenado o vetor
        vet.Sort();
        int anterior = Convert.ToInt32(vet[0]);
        for (int i = 1; i < vet.Count; i++)
        {
            int atual = Convert.ToInt32(vet[i]);
            if (atual == anterior)
            {
                vet.RemoveAt(i);
                i--;
            }
            else
            {
                anterior = atual;
            }
        }
        // escrevendo os itens do vetor na tela
        for (int i = 0; i < vet.Count; i++)
        {
            Response.Write(vet[i].ToString() + " - ");
        }
Related Posts Plugin for WordPress, Blogger...