0
点赞
收藏
分享

微信扫一扫

Array-自定义排序规则

目标践行者 2022-02-19 阅读 108

直接上例子:

package com_cc.Private;


import java.lang.reflect.Array;
import java.util.Arrays;
import java.util.Comparator;

/**
 * @author cc
 * @version 1.0
 */
public class Sort_ {
    public static void main(String[] args) {

        int[] a = new int[4];
        Book[] books = new Book[4];
        books[0] = new Book(100,"红楼梦");
        books[1]  = new Book(90,"金瓶梅");

        books[2]  = new Book(5,"青年111111111");
        books[3]  = new Book(300,"Java");

        Arrays.sort(books, new Comparator<Book>() {//自定义排序规则,写一个内部类实现接口comparator
            @Override
            public int compare(Book o1, Book o2) {
                //return o2.price - o1.price;//从大到小
                //return o1.price - o2.price;//升序
                return -(o1.book.length() - o2.book.length());//书名的长度
            }
        });

        System.out.println(Arrays.toString(books));


    }
}

class Book{
    String book;
    int price;

    public Book(int price, String book) {
        this.book = book;
        this.price = price;
    }

    @Override
    public String toString() {
        return "Book{" +
                "book='" + book + '\'' +
                ", price=" + price +
                '}';
    }
}
举报

相关推荐

0 条评论