public static <T> void sort(String ... array, Comparator<T> comparator){
String buffer;
for (int i = 0; i < array.length; i++) {
for (int j = i; j < array.length; j++) {
if(comparator.compare(array[i], array[j]) == 1){
buffer = array[i];
array[i] = array[j];
array[j] = buffer;
}
}
}
}
В качестве компаратора используйте лямбда-функцию, задающую реализацию методу compare() из интерфейса java.util.Comparator.
Как вариант пузырьковой сортировки с лямбдой - может он вам поможет. Строки сортируются в данном случае сначала по длине, потом по индексу буквы e.
import java.util.Arrays;
import java.util.Comparator;
public class TestCompareStrings {
public static void main(String[] args) {
String[] arr = {"red", "green", "blue"};
sort((a, b) -> {
return a.length() > b.length() ? 1 : (a.length() == b.length()) ? 0 : -1;
}, arr);
System.out.println(Arrays.toString(arr));
sort((a, b) -> {
return a.indexOf('e') > b.indexOf('e') ? 1 : (a.indexOf('e') == b.indexOf('e')) ? 0 : -1;
}, arr);
System.out.println(Arrays.toString(arr));
}
public static void sort(Comparator<String> comparator, String[] array) {
String buffer;
for (int i = 0; i < array.length - 1; i++) {
for (int j = array.length - 2; j >= i; j--) {
if (comparator.compare(array[j], array[j + 1]) == 1) {
buffer = array[j + 1];
array[j + 1] = array[j];
array[j] = buffer;
}
}
}
}
}
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Никак не могу понять в чем ошибкаИспользую конструктор без аргумента,но при этом все равно ловлю этот эксепшен
Если при вставке новых элементов в ArrayList, недостаточно места, то новая ёмкость рассчитывается по формуле: (oldCapacity*3)/2+1 С какой целью разработчики...
Здравствуйте, пишу программу, которая работает с БД, но возникла проблема с написание хорошей функции для выборке данных из БД, чтобы она...
Здравствуйте, есть такой вот код, по идее он должен зашифровать слово "hello" и здесь же дешифровать, вывести в text view, но при запуске приложение...