String.compareTo()
Сравнивает две строки по алфавиту (лексикографически).
Доступно с: Java 1.0
Синтаксис
public int compareTo(String anotherString)Параметры
| Параметр | Тип | Описание |
|---|---|---|
| anotherString | String | Строка, с которой сравнивается текущая. |
Возвращаемое значение
intОтрицательное число, если строка идёт раньше, 0 — если равны, положительное — если позже.
Примеры
Знак результата показывает порядок:
void main() {
IO.println("apple".compareTo("banana"));
IO.println("pear".compareTo("pear"));
IO.println("pear".compareTo("Pear"));
}Результат:
-1
0
32Проверяйте знак, а не конкретное число:
void main() {
String a = "Oleg";
String b = "Anna";
if (a.compareTo(b) > 0) {
IO.println(b + " comes first");
}
}Результат:
Anna comes firstПримечания
Сравниваются коды символов, поэтому все заглавные буквы идут раньше строчных: "Zoo" меньше "apple". Для сравнения без регистра есть compareToIgnoreCase(), а для правил конкретного языка — java.text.Collator.
См. также
- String.equals() — Сравнивает содержимое двух строк.
- Comparable.compareTo() — Задаёт естественный порядок объектов класса — по нему работают sort() и TreeSet.
- Comparator.comparing() — Создаёт компаратор, который сравнивает объекты по одному полю.
Вопросы и ответы по теме
В учебнике
- Методы строк — Основные методы String в Java: поиск, substring, смена регистра, strip, replace, split, join, repeat и проверки строк.