Pesquisando em um Vector

Oi Pessoal tudo bem … estou com um duvida muito primaria mais gostaria da achuda de vcs

Tenho um Vector com varios dados, e gostaria de estar removendo os dados repitido desse Vector.

A forma mais fácil de remover os dados repetidos é copiar os dados para alguma outra estrutura (como um LinkedHashSet, por exemplo, que não aceita dados repetidos e preserva a ordem das operações), e copiar de volta para o Vector se você quiser.

Acho que no seu caso o mais adequado seria um HashSet, nessa classe do Collections framwork, vc insere os elementos, se houver dois elementos com o mesmo hash code , ele insere o mais autal. Assim se vc passar todos os elementos do Vector para o HashSet, vc tera uma colecao de itens diferentes

É um vetor ordenado?

Que tipo de dado você tem nesse vetor?

Oi Pessoal tudo bem … estou com um duvida muito primaria mais gostaria da achuda de vcs

Tenho um Vector com varios dados, e gostaria de estar removendo os dados repitido desse Vector.

obs
O Vector ñ é Ordenado e o tipo de dados é String;

Aqui tem um exemplo bem simples. Você por “vector” quer dizer java.util.Vector, ou um array do Java? Estou supondo que você disse java.util.Vector.

import java.util.*;

class Test188 {
	public static void main(String[] args) {
		Vector v = new Vector();
		v.add ("3"); v.add ("1"); v.add ("4"); v.add ("1"); v.add ("5");
		System.out.println (v); // note que o elemento "1" está  repetido
		Set s = new LinkedHashSet();
		s.addAll (v);
	    System.out.println (s); // veja que os elementos repetidos foram eliminados
	    Vector v2 = new Vector();
	    v2.addAll (s);
	    System.out.println (v2); // se quiser usar como Vector mesmo...
	}
}

A saída dele é:

[3, 1, 4, 1, 5]
[3, 1, 4, 5]
[3, 1, 4, 5]

Se você tiver um Vector de outras coisas que não Strings, ou Integer, ou outros tipos que já têm definidos os métodos “equals” e “hashCode”, você precisa implementar “equals” e “hashCode” na classe cujos elementos são inseridos no Vector, senão como é que você vai saber que os elementos estão repetidos?