你可以使用 Java 的 Collections.sort 方法结合自定义的比较器来根据 Result 对象的 area 属性对 List 进行排序。假设 Result 类有一个 getArea 方法来获取 area 属性,以下是具体的实现代码:
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;
class Result {
private double area;
public Result(double area) {
this.area = area;
}
public double getArea() {
return area;
}
@Override
public String toString() {
return "Result{" +
"area=" + area +
'}';
}
}
public class Main {
public static void main(String[] args) {
List<Result> list = new ArrayList<>();
list.add(new Result(10.5));
list.add(new Result(5.2));
list.add(new Result(7.8));
list.add(new Result(3.3));
// 使用自定义比较器根据 area 属性进行排序
Collections.sort(list, new Comparator<Result>() {
@Override
public int compare(Result r1, Result r2) {
return Double.compare(r1.getArea(), r2.getArea());
}
});
// 打印排序后的结果
for (Result result : list) {
System.out.println(result);
}
}
}