Java String compareTo ()

O método Java String compareTo () compara duas strings lexicograficamente (na ordem do dicionário). A comparação é baseada no valor Unicode de cada caractere nas strings.

A sintaxe do compareTo()método é:

 string.compareTo(String str)

Aqui, string é um objeto da Stringclasse.

Parâmetros compareTo ()

O compareTo()método usa um único parâmetro.

  • str - a string a ser comparada

compareTo () Valor de retorno

  • retorna 0 se as strings são iguais
  • retorna um número inteiro negativo se stringvier antes do strargumento na ordem do dicionário
  • retorna um número inteiro positivo se stringvier depois do strargumento na ordem do dicionário

Exemplo: 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 ) )

Aqui,

  • str1 e str2 são iguais. Portanto, str1.compareTo(str2)retorna 0.
  • str1 vem antes de str3 na ordem do dicionário. Portanto, str1.compareTo(str3)retorna negativo e str3.compareTo(str1)retorna positivo.

Exemplo 2: Verifique se duas cordas são iguais

 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"); ) ) )

Resultado

 str1 e str2 não são iguais

O compareTo()método leva em consideração as maiúsculas e minúsculas (maiúsculas e minúsculas).

Exemplo 3: compareTo () com 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 ) )

Quando "Learn Java"é comparado com "learn Java", não obtemos 0. É porque compareTo()leva em consideração a caixa das letras.

Notas:

  • Se você precisar comparar duas strings ignorando diferenças de maiúsculas e minúsculas, use o método Java String compareToIgnoreCase ().
  • Se passar nullpara o compareTo()método, obterá um erro.

Tutorial relacionado: Java String equals ()

Artigos interessantes...