当前位置:   article > 正文

java对二维数组进行排序(奥运奖牌排序)——lambda 表达式形式_java二维数组排序 lambda表达式

java二维数组排序 lambda表达式

Arrays.sort

场景如下
在这里插入图片描述
也就是说我们的数组是一个n×3的形式

  •   例如{{1,3,4},{4,6,2},{3,6,8},{3,4,3}}
    
    • 1
package com.mystep.step.demo1;

import java.util.Arrays;
import java.util.Random;

/**
 * @author step
 * @date 2021年08月12日 19:26
 */
public class Demo {
    public static void main(String[] args) {
        Demo demo = new Demo();
        int n=20;
        int [][] data = new int[n][3];
        Random random=new Random();
        for (int i=0;i<n;i++){
            data[i][0]=random.nextInt(20);
            data[i][1]=random.nextInt(20);
            data[i][2]=random.nextInt(20);
        }
        demo.test(data);
        for (int[] d:data){
            System.out.println(Arrays.toString(d));
        }
    }
    //排序方法
    void test(int [][] data){
        Arrays.sort(data,((o1,o2) ->{
            if (o1[0]==o2[0]){
                if (o1[1]==o2[1]){
                    return o2[2]-o1[2];
                }
                return o2[1]-o1[1];
            }
            return o2[0]-o1[0];
        }));
    }
}

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/2023面试高手/article/detail/534149
推荐阅读
相关标签
  

闽ICP备14008679号