Tenho um método do objeto A que retorna um número x. O objeto B contém inúmeros objetos A (através de um ArrayList). Gostaria de imprimir em ordem decrescente todos os objetos A que estão em B de acordo com valor retornado pelo método. Qual a forma mais fácil de fazer isso?
Imprimir em ordem decrescente
P
4 Respostas
T
Ordene usando a ordem decrescente. Use Collections.sort e Collections.reverseOrder.
com comparator
Collections.sort(b.getAs(), new Comparator<A>() {
public int compare(A object, A other) {
return object.getX() - other.getX();
}});
se vc kizer, vc pode criar a classe comparator para fazer a comparação e não instanciar direto pela interface... algo assim
private class ComparaMetodoX implements Comparator<A> {
public int compare(A object, A other) {
return object.getX() - other.getX();
}
}
podendo usar o sort assim
Collections.sort(b.getAs(), new ComparaMetodoX());
Já que está utilzando o ArrayList é melhor usar o Collections.sort

Isso usa o Colletions.sort e implementa comparator, é mais fácil
Criado 23 de março de 2009
Ultima resposta 17 de set. de 2009
Respostas 4
Participantes 5
Alura POO: o que é programação orientada a objetos? Aprenda os conceitos básicos da programação orientada a objetos, como classes, objetos, herança, encapsulamento e polimorfismo, com exemplos.
Casa do Codigo Inteligencia Artificial e ChatGPT: Da revolucao dos... Por Fabricio Carraro — Casa do Codigo