Сортировка двумерного массива методом Arrays.sort();

674
21 мая 2017, 21:19

Всем привет. У меня маленькая проблема, не могу отсортировать двумерный массив. Я только начал изучать java.

Подскажите пожалуйста, как мне сделать сортировку правильно?

int[][] arrayD ={{2,3,1,5,4},{6,8,7,10,9}};
for (int i = 0; i < arrayD.length; i++) {
     for (int j = 0; j < arrayD.length; j++) {
     }
}
Arrays.sort(arrayD);
for (int i = 0; i < arrayD.length; i++) {
     for (int j = 0; j < arrayD.length; j++) {
     }
}
for (int[] is : arrayD) {
     System.out.println(is + " ");
}
Answer 1

Используйте это:

Arrays.sort(arrayD, new Comparator<int[]>() {
    @Override
    public int compare(int[] o1, int[] o2) {
        return Integer.compare(o2[1], o1[1]);
    }
});

В Java 8 можно поступить проще:

Arrays.sort(arrayD, Comparator.comparingInt(arr -> arr[1]));

Где arr[1] - колонка, по которой будет происходить сортировка.

READ ALSO
Своя кнопка в диалог фрагмент

Своя кнопка в диалог фрагмент

У меня к классу наследуемому от DialogFragment подключен интерфейс DialogInterfaceOnClickListener

401
Удалить слова, встречающиеся один раз из массива строк

Удалить слова, встречающиеся один раз из массива строк

Есть массив строк, нужно удалить НЕповторяющиеся элементыНашла минималистичный код для удаления повторяющихся элементов:

374