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

st.*_*ath 2 java arrays sorting

我想Object[][]按由 s 组成的第一列对an 进行排序int。举个例子array

Object[][] array = {{1, false, false}, {2, true, false}, {0, true, true}};
Run Code Online (Sandbox Code Playgroud)

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

Object[][] newArray = ...;
System.out.println(Arrays.deepToString(newArray));
Run Code Online (Sandbox Code Playgroud)

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

谢谢。

sch*_*123 6

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);
  }
});
Run Code Online (Sandbox Code Playgroud)