我有一门课叫水果.我正在创建这个类的列表,并将每个水果添加到列表中.我想根据水果名称的顺序对这个列表进行排序.

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;
    }
}

我正在使用for循环创建它的列表

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

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

我需要使用列表中每个对象的水果名称对此arrayList进行排序

怎样

推荐答案

使用这样的Comparator:

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);
        }
    });

现在您的水果列表是根据fruitName进行排序的.

Java相关问答推荐

Java加密/解密代码转换为PHP不起作用

内容处置 destruct 了PSP请求

Spring bootstrap @ Asmat注释与@ Routed

为什么一个Test的instance?& gt;在构造函数中接受非空对象?

FALSE:它应该在什么时候使用?

什么是Java原子属性的正确getter和setter

第三方Jar pom.xml

SpringBoot Kafka自动配置-适用于SASL_PLAYTEXT的SSLBundle 包,带SCRAM-SHA-512

将Spring Boot 3.2.0升级到3.2.1后查询执行错误

try 在Android Studio中的infoWindow中使用EditText(Java)

如何在JavaFX循环中完美地制作一个AudioClip/MediaPlayer?

有没有可能在时间范围内得到多种解决方案?

将JSON字符串转换为Java类

Java中不兼容的泛型类型

如何在列表(链表)中插入一个新 node (作为prelast)

在实例化中指定泛型类型与不指定泛型类型之间的区别

在单例类上获取Java锁,了解原因

如何在Struts2中使用操作类中的结果注释重定向到不同的命名空间

基于距离的APACHE POI公式判断

使用StringBuilder和append方法创建字符串时Java字符串内部方法的问题