Hajar Ammoumri
Hajar Ammoumri

Reputation: 65

Sort list alphabtically in Android

I have an ArrayList that I want to sort alphabetically. can someone help me plz?

My code is:

listProd = new ArrayList<Producer>();   

Collections.sort(listProd, new Comparator<Producer>() {
    @Override
    public int compare(Producer p1, Producer p2) {
      return p1.getLastname().compareToIgnoreCase(p2.getLastname());

    }
});

if (!checked) {
  for (Tour t : listTour) {
    listProd.addAll(t.getProducers());
  }
} else {
  listProd = service.getAllProducers();
}

Upvotes: 1

Views: 59

Answers (1)

Sam Dozor
Sam Dozor

Reputation: 40734

You have to sort after you've added everything to the list:

if (!checked) {
    listProd = new ArrayList();
    for (Tour t : listTour) {
        listProd.addAll(t.getProducers());
    }
} else {
    listProd = service.getAllProducers();
}

Collections.sort(listProd, new Comparator<Producer>() {

        @Override
        public int compare(Producer p1, Producer p2) {
            return p1.getLastname().compareToIgnoreCase(p2.getLastname());

        }
 });

Upvotes: 2

Related Questions