Методът Java String compareTo () сравнява два низа лексикографски (в речника на речника). Сравнението се основава на стойността на Unicode на всеки символ в низовете.
Синтаксисът на compareTo()
метода е:
string.compareTo(String str)
Тук низът е обект на String
класа.
Параметри compareTo ()
В compareTo()
метода се един параметър.
- str - низът за сравнение
compareTo () Върната стойност
- връща 0, ако низовете са равни
- връща отрицателно цяло число, ако аргументът „
string
пред“ идва вstr
аргумента в реда на речника - връща положително цяло число, ако
string
идва следstr
аргумента в реда на речника
Пример: Java String compareTo ()
class Main ( public static void main(String() args) ( String str1 = "Learn Java"; String str2 = "Learn Java"; String str3 = "Learn Kolin"; int result; // comparing str1 with str2 result = str1.compareTo(str2); System.out.println(result); // 0 // comparing str1 with str3 result = str1.compareTo(str3); System.out.println(result); // -1 // comparing str3 with str1 result = str3.compareTo(str1); System.out.println(result); // 1 ) )
Тук,
- str1 и str2 са равни. Следователно
str1.compareTo(str2)
връща 0. - str1 идва преди str3 в речника на речника. Следователно
str1.compareTo(str3)
връща отрицателно иstr3.compareTo(str1)
връща положително.
Пример 2: Проверете дали два струни са равни
class Main ( public static void main(String() args) ( String str1 = "Learn Python"; String str2 = "Learn Java"; // if str1 and str2 are equal, the result is 0 if (str1.compareTo(str2) == 0) ( System.out.println("str1 and str2 are equal"); ) else ( System.out.println("str1 and str2 are not equal"); ) ) )
Изход
str1 и str2 не са равни
В compareTo()
метод отнема случая буквата (главни и малки букви) под внимание.
Пример 3: compareTo () с Case
class Main ( public static void main(String() args) ( String str1 = "Learn Java"; String str2 = "learn Java"; int result; // comparing str1 with str2 result = str1.compareTo(str2); System.out.println(result); // -32 ) )
Когато "Learn Java"
се сравнява с "learn Java"
, не получаваме 0. Това е така, защото compareTo()
взема предвид буквата.
Бележки:
- Ако трябва да сравните два низа, като игнорирате разликите между регистрите, използвайте метода Java String compareToIgnoreCase ().
- Ако преминете
null
къмcompareTo()
метода, ще получите грешка.
Свързани уроци: Java String е равно ()