以下是一個使用Java SortExpression類的實例:
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;
class Student {
private String name;
private int age;
public Student(String name, int age) {
this.name = name;
this.age = age;
}
public String getName() {
return name;
}
public int getAge() {
return age;
}
}
public class SortExpressionExample {
public static void main(String[] args) {
List<Student> students = new ArrayList<>();
students.add(new Student("Alice", 20));
students.add(new Student("Bob", 18));
students.add(new Student("Charlie", 22));
// 使用SortExpression類進行排序
Collections.sort(students, new SortExpression<Student>()
.addExpression(Student::getAge, SortExpression.Order.ASC)
.addExpression(Student::getName, SortExpression.Order.DESC));
// 打印排序結果
for (Student student : students) {
System.out.println(student.getName() + " - " + student.getAge());
}
}
}
上述代碼定義了一個Student類,包含name和age屬性。然后創建了一個List對象students,包含了三個學生對象。使用SortExpression類對students進行排序,首先按照age屬性進行升序排序,然后按照name屬性進行降序排序。最后打印排序結果。