Ir para o conteúdo
Wasted

Iterable + Classes génericas

Mensagens Recomendadas

Wasted    0
Wasted

Boas tardes, deparo-me com dificuldade a implementar o seguinte método:

//removes the duplicates from the iterable collection

public static <E> removeDuplicates(Iterable<E> a) {}

Como hei de fazer isto? Já tentei chamar o método iterator() mas no entanto como me é possível eliminar objectos repetidos na colecção, se apenas posso andar para a frente? Agradecia uma ajuda..Cumps

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
edsousa    0
edsousa

O que é suposto devolver? Recebe uma colecção iterável de E's e devolve um E?

Código para remover duplicados:

public static <E> removeDuplicates(Iterable<E> a) {

     HashSet set  = new HashSet();
     
     Iterator<E> it = a.iterator();

     while(it.hasNext()){
        E x = it.next();
        if(!set.add(x)) { //se o objecto já existe no Set, elimina-se esta cópia
           it.remove();
        }
     }
  return //??;
}

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora


×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade