Java:按第一列(int 填充)对二维数组进行排序

标签 java arrays sorting

我想按由 int 组成的第一列对 Object[][] 进行排序。 以此数组为例:

Object[][] array = {{1, false, false}, {2, true, false}, {0, true, true}};

现在,我想创建一个新的数组,其行按照每行的第一个元素升序的方式排序:

Object[][] newArray = ...;
System.out.println(Arrays.deepToString(newArray));

应该打印什么:{{0, true, true}, {1, false, false}, {2, true, false}}

谢谢。

最佳答案

Arrays.sort(array, new Comparator<Object[]>() {
  @Override
  public int compare(Object[] o1, Object[] o2) {
    Integer i1 = (Integer) (o1[0]);
    Integer i2 = (Integer) (o2[0]);
    return i1.compareTo(i2);
  }
});

关于Java:按第一列(int 填充)对二维数组进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25788843/

相关文章:

java - 如何将用户注册到 firebase 注册中?

java - oAuth2 clientId 和 clientSecret 的正确位置

java - 鼠标控制形状绘制

c - C 中的二维数组?处理二维数组

ios - 我如何根据以下需求对 NSArray 进行排序/过滤?

java - 如何使用 docker-compose 链接两个容器

java - 这是否正确写入文本文件?

c - 如何正确传递单个字符作为对 C 中另一个方法的引用

mysql - 为什么这个 MySQL 查询即使有索引也要花这么长时间来排序?

sorting - 同位素过滤器、排序、搜索和 Url 哈希