una sort por ordenar objetos nombres metodo lista enlazada como atributo array alfabeticamente java sorting collections arraylist

sort - ordenar un array java



Cómo ordenar un ArrayList en Java (3)

Implementar una interfaz comparable a Fruit.

public class Fruit implements Comparable<Fruit> {

Implementa el método.

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

A continuación, llame método de clasificación

Collections.sort(fruitList);

Esta pregunta ya tiene una respuesta aquí:

Tengo una clase llamada Fruta. Estoy creando una lista de esta clase y agregando cada fruta en la lista. Quiero ordenar esta lista según el orden del nombre de la 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; } }

y estoy creando su lista usando for loop

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

y necesito ordenar esta arrayList usando el nombre de la fruta de cada objeto en la lista

¿¿cómo??


Prueba BeanComparator

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


Utilice un Comparator como este:

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

Ahora su lista de frutas está ordenada en base a fruitName .