import java.util.*; import java.util.Collections; import java.util.List; import java.util.Scanner; public class Main { public static void main(String[] args) { //创建一个键盘输入对象 Scanner scanner = new Scanner(System.in); //创建三个客户对象,并为其设置消费值 Customer customer1 = new Customer("小明",scanner.nextInt()); Customer customer2 = new Customer("小军",scanner.nextInt()); Customer customer3 = new Customer("小红",scanner.nextInt()); //创建一个列表 List<Customer> customers = new ArrayList<>(); //添加对象到列表中 customers.add(customer1); customers.add(customer2); customers.add(customer3); //利用Collections Collections.sort(customers); System.out.println(customers); } } class Customer implements Comparable<Customer>{ private String name; private int consumption; public Customer(String name, int consumption) { this.name = name; this.consumption = consumption; } @Override public String toString() { return "Customer{" + "name='" + name + '\'' + ", consumption=" + consumption + '}'; } //write your code here...... //getter和setter方法,在本类中执行,就不要这个方法了 @Override public int compareTo(Customer c){ //因为要求是从高到低,那么就是要反过来了 int result=c.consumption-this.consumption; return result; /* 解析: c:是已经在列表中的数据 this:是指当前要添加的元素 如果是负数,this往左边排 */ } }