package com.sf._02_arrays._01_排序;

import java.util.Arrays;
import java.util.Comparator;

public class Test {
    /**
     * Arrays 排序api
     * sort(数组);  默认升序排序
     * sort(数组,startIndex,endIndex)
     * sort(数组, Comparator.reverseOrder());    降序操作
     * sort(数组, new Compartor() 自己实现比较规则)
     *
     * 1 创建一个数组[2,1,3,4,5,10,8]
     * 2 需求: 讲数组进行升序排序
     * 3 需求: 查询索引为3-5 元素
     * 4 需求: 讲数组进行降序排序
     * 5 需求 创建User 类(name,age) 内容放到User[] 数组中
     *   按照年龄进行降序排序
     */
    public static void main(String[] args) {
        Integer[] arr = {2,10,30,4,51,8};
        // 1 数组升序排序
//        Arrays.sort(arr);
        // 2 查看索引3-5 元素
//        Arrays.sort(arr,2,6);
//        System.out.println(Arrays.toString(arr));
        // 3 对于数组进行降序排序
        Arrays.sort(arr,Comparator.reverseOrder());
        System.out.println(Arrays.toString(arr));
        User[] users= {new User("zhangsan",20),
                new User("lisi",10),new User("wangwu",30)};
        Arrays.sort(users, new Comparator<User>() {
            @Override
            public int compare(User o1, User o2) {
                if(o1.getAge() > o2.getAge()){
                    return -1;
                }else if(o1.getAge() < o2.getAge()){
                    return 1;
                }else{
                    return 0;
                }
            }
        });
        System.out.println(Arrays.toString(users));
    }


}
