题解 | #集合排序#
集合排序
https://www.nowcoder.com/practice/4d12899bb255459bbf2b3635b3d32817
import java.util.ArrayList; import java.util.Collections; import java.util.List; import java.util.Scanner; import java.util.Comparator; import java.util.stream.Collectors; 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); //write your code here...... customers = customers.stream() .sorted(Comparator.comparingInt(Customer::getConsumption).reversed()) .collect(Collectors.toList()); 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...... @Override public int compareTo(Customer customer) { return this.consumption - customer.consumption; } public int getConsumption() { return consumption; } }