Comment sortinger une liste de tableaux en Java

J’ai une classe nommée Fruit. Je crée une liste de cette classe et ajoute chaque fruit dans la liste. Je veux sortinger cette liste en fonction de l’ordre du nom du fruit.

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

et je crée sa liste en utilisant pour la boucle

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

et je dois sortinger ce tableau en utilisant le nom de fruit de chaque object de la liste

Comment??

Utilisez un Comparator comme celui-ci:

 List fruits= new ArrayList(); Fruit fruit; for(int i = 0; i < 100; i++) { fruit = new Fruit(); fruit.setname(...); fruits.add(fruit); } // Sorting Collections.sort(fruits, new Comparator() { @Override public int compare(Fruit fruit2, Fruit fruit1) { return fruit1.fruitName.compareTo(fruit2.fruitName); } }); 

Maintenant, votre liste de fruits est sortingée en fonction de fruitName .

Implémenter une interface comparable à Fruit.

 public class Fruit implements Comparable { 

Il implémente la méthode

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

Ensuite, faites appel méthode de sorting

 Collections.sort(fruitList); 

Essayez BeanComparator

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