Сортировка массива строк в Java: методы и примеры

Чтобы отсортировать массив строк в Java, вы можете использовать различные методы. Вот несколько часто используемых подходов:

  1. Метод Arrays.sort():
    Java предоставляет метод Arrays.sort(), который можно напрямую применять к массиву строк для сортировки его элементов в лексикографическом формате. (Алфавитный порядок. Вот пример:

    import java.util.Arrays;
    public class Main {
       public static void main(String[] args) {
           String[] array = {"banana", "apple", "orange", "grape"};
           Arrays.sort(array);
           System.out.println(Arrays.toString(array));
       }
    }

    Вывод: [яблоко, банан, виноград, апельсин]

  2. Использование специального компаратора.
    Если вам нужно отсортировать массив строк на основе определенного критерия, отличного от лексикографического порядка по умолчанию, вы можете создать собственный Компаратори использовать его. с помощью метода Arrays.sort(). Вот пример сортировки по длине строки:

    import java.util.Arrays;
    import java.util.Comparator;
    public class Main {
       public static void main(String[] args) {
           String[] array = {"banana", "apple", "orange", "grape"};
           Arrays.sort(array, Comparator.comparingInt(String::length));
           System.out.println(Arrays.toString(array));
       }
    }

    Вывод: [яблоко, виноград, банан, апельсин]

  3. Использование Stream API:
    В Java 8 появился Stream API, который обеспечивает краткий способ сортировки массива строк. Вот пример:

    import java.util.Arrays;
    public class Main {
       public static void main(String[] args) {
           String[] array = {"banana", "apple", "orange", "grape"};
           array = Arrays.stream(array)
               .sorted()
               .toArray(String[]::new);
           System.out.println(Arrays.toString(array));
       }
    }

    Вывод: [яблоко, банан, виноград, апельсин]