Главная chevron_right Переменные и константы chevron_right Типы данных chevron_right <= (less than or equal)

<= (less than or equal)

Оператор <= сравнивает два объекта String лексикографически и возвращает true, если левая строка стоит раньше правой в алфавитном порядке или полностью совпадает с ней.

Полная статья

Описание

Оператор <= сравнивает два объекта String лексикографически — то есть так, как слова сравниваются в словаре, символ за символом по их числовым кодам. Результат true означает, что левая строка либо «меньше» правой (стоит раньше в алфавитном порядке), либо полностью совпадает с ней.

Это полезно, когда нужно упорядочить строки или проверить, что одна строка не превышает другую по алфавиту — например, при сортировке команд, меток или имён.

Синтаксис

myString1 <= myString2

Параметры

  • myString1: строка слева от оператора — та, которую проверяем.
  • myString2: строка справа от оператора — эталон для сравнения.

Возвращает

true, если myString1 лексикографически меньше либо равна myString2. Иначе возвращает false.

Как работает лексикографическое сравнение

Сравнение идёт посимвольно слева направо по числовым кодам символов (ASCII). Например, "apple" меньше "banana", потому что 'a' (код 97) стоит раньше 'b' (код 98). Строка "abc" меньше "abcd", потому что она заканчивается раньше при совпадающем начале.

Важно помнить: заглавные буквы имеют меньшие коды, чем строчные. Поэтому "Zebra" окажется «меньше» "apple"'Z' (код 90) предшествует 'a' (код 97).

Практические замечания

  • Сравнение чувствительно к регистру: "Hello" и "hello" — разные строки, и "Hello" будет считаться меньше "hello".
  • Если нужно проверить именно равенство двух строк, удобнее использовать == или equals() — они выражают намерение яснее, чем оператор <= в одиночку.
  • Пустая строка "" лексикографически меньше любой непустой строки, поэтому выражение "" <= "anything" всегда вернёт true.
  • Оператор работает только с объектами класса String. Для сравнения строк в стиле C (char[]) используйте функцию strcmp() из стандартной библиотеки C.
  • Если обе строки одинаковы, оператор возвращает true — это отличает его от строгого <, который вернул бы false.