sort - Como classificar um ArrayList em Java




sort arraylist java by field (2)

Experimente o BeanComparator

BeanComparator fieldComparator = new BeanComparator(
                "fruitName");
Collections.sort(fruits, fieldComparator);

Esta questão já tem uma resposta aqui:

Eu tenho uma classe chamada Fruit. Estou criando uma lista dessa classe e adicionando cada fruta na lista. Eu quero classificar essa lista com base na ordem do nome da fruta.

public class Fruit{

    private String fruitName;
    private String fruitDesc;
    private int quantity;

    public String getFruitName() {
        return fruitName;
    }
    public void setFruitName(String fruitName) {
        this.fruitName = fruitName;
    }
    public String getFruitDesc() {
        return fruitDesc;
    }
    public void setFruitDesc(String fruitDesc) {
        this.fruitDesc = fruitDesc;
    }
    public int getQuantity() {
        return quantity;
    }
    public void setQuantity(int quantity) {
        this.quantity = quantity;
    }
}

e estou criando sua lista usando loop

List<Fruit>  fruits= new ArrayList<Fruit>();

Fruit fruit;
for(int i=0;i<100;i++)
{
   fruit = new fruit();
   fruit.setname(...);
   fruits.add(fruit);
}

e eu preciso classificar este arrayList usando o nome da fruta de cada objeto na lista

como??


Implemente interface comparável ao Fruit.

public class Fruit implements Comparable<Fruit> {

Implementa o método

@Override
    public int compareTo(Fruit fruit) {
        //write code here for compare name
    }

Então chame o método de ordenação

Collections.sort(fruitList);




arraylist