CodeGym /Blogue Java /Random-PT /Método Java String compareTo()
John Squirrels
Nível 41
San Francisco

Método Java String compareTo()

Publicado no grupo Random-PT

O que é o método Java String compareTo()?

O método compareTo() da classe de string java retorna o valor 0 se ambas as strings forem lexicograficamente iguais. Se a string comparada for maior lexicograficamente, o valor positivo será retornado, caso contrário, o valor negativo será retornado. Portanto, o método Java string compareTo() é usado para comparar duas strings. O valor unicode de cada caractere na string é sempre usado por este método para compará-los. Ao comparar as strings, se alguma delas estiver vazia, sempre retorna o comprimento da string. Se alguma das strings estiver vazia, dois cenários poderão ocorrer. Se a primeira string estiver vazia, ela retornará um valor negativo, caso contrário, retornará um valor positivo. O método Java string.compareTo() por padrão diferencia maiúsculas de minúsculas, mas podemos usar o método compareToIgnoreCase() da classe Java String para ignorar a distinção entre maiúsculas e minúsculas durante a comparação. Este método também retorna um número inteiro negativo, 0 ou positivo, conforme descrito acima.

Sintaxe

public int compareTo(string str)
public int compareTo(object obj)

Parâmetros

O método Java string compareTo() recebe uma string ou um objeto como parâmetro, como você pode ver acima na sintaxe.

Devoluções

  1. Retorna 0 se ambos forem lexicograficamente iguais.
  2. Ele retorna um número inteiro positivo se a string ou objeto comparado for maior lexicograficamente.
  3. Retorna um número inteiro negativo se um dos comparados for menor lexicograficamente.

Exceções

O método compareTo() retorna 2 exceções.
  • ClassCastException , se o objeto não puder ser comparado ele retornará esta exceção.
  • NullPointerException , se a string for nula, NullPointerException será lançada.

Exemplos de métodos Java String compareTo()

class Main {
  public static void main(String[] args) {
    // declaring strings to be used in this example for Java string     compareTo() method
    String str = "Java compareTo() method example";
    String str1 = "Java compareTo() method example";
    String str2 = "this is Java compareTo() method example";
    String str3 = "Java CompareTo() Method Example";
    String str4 = "a Java compareTo() method example";
    String str5 = new String("Java compareTo() method example");

    // comparing the str and str1 strings
    System.out.println(str.compareTo(str1));

    // comparing the str and str2 strings
    System.out.println(str.compareTo(str2));

    // comparing the str and str3 strings
    System.out.println(str.compareTo(str3));

    // comparing the str and str4 strings
    System.out.println(str.compareTo(str4));

    // comparing the str string and str5 string object
    System.out.println(str.compareTo(str5));
  }
}

Saída

0 -42 74 -23 0
Como sabemos, as strings str e str1 são iguais lexicograficamente, então retornou 0. Ao comparar str e str2 , ele retornou um valor negativo de 42 porque a string comparada str é menor lexicograficamente, então é negativa e com base no valor unicode t char e J char tem uma diferença de 42, então um valor -42 é retornado. De resto você pode ver os resultados para entender melhor este método.

Exemplo de uma string vazia

public class Main{
    public static void main(String args[]){
        String str="compareTo()";

        // declaring an empty string
        String str1="";
        String str2="method";

        System.out.println(str.compareTo(str1));
        System.out.println(str1.compareTo(str2));
    }
}

Saída

11 -6

Exemplo de IgnoreCase

public class Main{
    public static void main(String args[]){
        String str="compareTo()";

        // declaring the same string with uppercase letters
        String str1="COMPARETO()";

        System.out.println(str.compareTo(str1));
        System.out.println(str.compareToIgnoreCase(str1));
    }
}

Saída

32 0

Conclusão

Esperamos que agora você entenda o que é o método Java string compareTo() e como implementá-lo para comparação de strings, junto com seus diferentes casos de usuário, como a comparação de strings vazias e ignorando a diferenciação de maiúsculas e minúsculas. Sinta-se à vontade para praticar e voltar sempre que precisar de mais ajuda. Feliz aprendizado!
Comentários
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION