Array List - Valores Distintos

6 respostas
G

Tenho uma List de String com X Valores.

Preciso imprimir na tela todos os valores distintos ou seja, sem repetições.

Qual a maneira mais fácil de eu fazer isso?

6 Respostas

crpablo

Uma forma seria vc criar uma outra list e adicionar somente os valores que vaum ser impressos…
Se o vai inserir o valor X, pesquisa nessa outra list se o X já consta lá, caso não conste, add…
Depois só imprimir esse list…

[]'s

peczenyj

Vc pode converter um List em um Set -- que possui os itens não repetidos.

(Versão Java 1.5 -- IMHO mais adequada)
import java.util.*;

public class A {
	public static void main(String[] args) {		
		List<String> lista = new ArrayList<String>();
		lista.add("huguinho");
		lista.add("zezinho");
		lista.add("luizinho");
		lista.add("huguinho");
		
		System.out.println("List: ");
		for(String it : lista)
			System.out.println(it);
		
		Set<String> outra = new HashSet<String>(lista);
				
		System.out.println("Set: ");
		for(String it : outra)
			System.out.println(it);
	}
}
Paulo_Silveira

Set set = new HashSet(suaListaComElementosRepetidos);

ai basta imprimir o set que ja nao havera os repetidos

Paulo_Silveira

Ops, o Tiago ja deu uma resposta bem mais completa que a minha.

G

Muito Obrigado peczenyj!

Valeu Paulo!!!

Solução perfeita, resolveu meu problema :smiley:

T

Uma coisa chata da HashSet é que os elementos ficam “fora de ordem”. Se quiser que não saiam da mesma ordem em que foram inseridos no ArrayList, use uma LinkedHashSet.

Criado 11 de fevereiro de 2008
Ultima resposta 11 de fev. de 2008
Respostas 6
Participantes 5