比较器Compare升序降序

本文详细介绍了Java中如何使用自定义比较器Comparator实现数组的升序和降序排列,并通过具体示例展示了比较器中不同返回值对排序结果的影响。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

package com.itheima.d1_set;
/*
    判断比较器compare升序降序
*/

import sun.plugin.javascript.navig.Array;

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

public class SetDemo4 {
    public static void main(String[] args) {
        Integer array[]  ={10,3,7,2,20,24};
        Arrays.sort(array,new Comparator<Integer>(){
            @Override
            public int compare(Integer t1, Integer t2) {
                return t1-t2;    //升序
            }
        });
        

        for (Integer arrays : array){
            System.out.print(arrays+" ");
        }
    }
}


结果:2 3 7 10 20 24 
package com.itheima.d1_set;


import sun.plugin.javascript.navig.Array;

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

public class SetDemo4 {
    public static void main(String[] args) {
        Integer array[]  ={10,3,7,2,20,24};

        Arrays.sort(array, new Comparator<Integer>() {
            @Override
            public int compare(Integer t1, Integer t2) {
                return t2-t1;           //降序
            }
        });

        for (Integer arrays : array){
            System.out.print(arrays+" ");
        }
    }
}


结果:24 20 10 7 3 2 

发现:public int compare(Integer t1, Integer t2) {
                return t1-t2;    //升序
            }

                public int compare(Integer t1, Integer t2) {
                return t2-t1;    //降序
            }

即:当返回的参数名称与形参名顺序相同时,则为升序。反之为降序。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值