Comparar com vários parâmetros

3 respostas
andre_guitar7

Boa noite, pessoal!

Minha dúvida é a seguinte: tenho um objeto que tem como parâmetros vários Strings. Este objeto implementa Comparable. Meu proposito é ter um Set desses objetos com TreeSet. Gostaria de ordenar pelos parâmetros de cada objeto por ordem alfabética. Se meu objeto fosse assim:

public class Objeto implements Comparable{
  private String string1;
  private String string2;
  private String string3;
  private String string4;

  public int compareTo(Object o){
  
  }
}

Eu gostaria de ordenar por prioridades: primeiro ordena pela string1, depois pela string2 e assim vai. Como vcs implementariam o compareTo? O meu problema é que tenho que ordenar por vários parâmetros e não somente um.

3 Respostas

Abdon

A solução é mais simples do que vc imagina haha
Basta concatenar eles e chamar o metodo compareToIgnerCase (ou algo parecido) da classe String. (Caso que não queria distinção de letras maiusculas para minusculas nas sua comparação)

andre_guitar7

Abdon:
A solução é mais simples do que vc imagina haha
Basta concatenar eles e chamar o metodo compareToIgnerCase (ou algo parecido) da classe String. (Caso que não queria distinção de letras maiusculas para minusculas nas sua comparação)

Obrigado pela ajuda, Abdon… não entendi sua solução, pode ser um pouco mais específico? Junta todos os atributos e compara?

andre_guitar7

CARA FUNCIONOU!!! VALEWS!

Criado 20 de abril de 2007
Ultima resposta 20 de abr. de 2007
Respostas 3
Participantes 2