<=

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

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

Описание

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

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

Синтаксис

myString1 <= myString2

Параметры

  • myString1: объект String, стоящий слева от оператора — тот, который проверяется на «меньше или равно».
  • myString2: объект String, стоящий справа — эталон для сравнения.

Возвращает

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

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

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