Podemos comparar String em Java com base no conteúdo e na referência.
É usado em autenticação (pelo método equals()), Ordenação (pelo método compareTo()), correspondência de referência (por == operador) etc.
Existem três maneiras de comparar String em Java:
- Usando o método equals()
- Usando == Operador
- Pelo método compareTo()
1) Usando o método equals()
O método equals() da classe String compara o conteúdo original da string. Ele compara valores de string em busca de igualdade. A classe String fornece os dois métodos a seguir:
lançar tratamento de exceções em java
Teststringcomparison1.java
class Teststringcomparison1{ public static void main(String args[]){ String s1='Sachin'; String s2='Sachin'; String s3=new String('Sachin'); String s4='Saurav'; System.out.println(s1.equals(s2));//true System.out.println(s1.equals(s3));//true System.out.println(s1.equals(s4));//false } }Teste agora
Saída:
true true false
No código acima, duas strings são comparadas usando é igual a() método de Corda aula. E o resultado é impresso como valores booleanos, verdadeiro ou falso .
memória virtual
Teststringcomparison2.java
class Teststringcomparison2{ public static void main(String args[]){ String s1='Sachin'; String s2='SACHIN'; System.out.println(s1.equals(s2));//false System.out.println(s1.equalsIgnoreCase(s2));//true } }Teste agora
Saída:
false true
No programa acima, os métodos de Corda classe são usados. O é igual a() O método retorna verdadeiro se os objetos String forem correspondentes e ambas as strings forem do mesmo caso. equalsIgnoreCase() retorna verdadeiro independentemente dos casos de strings.
Clique aqui para mais informações sobre o método equals()2) Usando o operador ==
O operador == compara referências e não valores.
Teststringcomparison3.java
pandas loca
class Teststringcomparison3{ public static void main(String args[]){ String s1='Sachin'; String s2='Sachin'; String s3=new String('Sachin'); System.out.println(s1==s2);//true (because both refer to same instance) System.out.println(s1==s3);//false(because s3 refers to instance created in nonpool) } }Teste agora
Saída:
true false
3) Comparação de strings pelo método compareTo()
O código acima demonstra o uso de == operador usado para comparar dois Corda objetos.
cobertura de declaração
3) Usando o método compareTo()
O método compareTo() da classe String compara valores lexicograficamente e retorna um valor inteiro que descreve se a primeira string é menor, igual ou maior que a segunda string.
Suponha que s1 e s2 sejam dois objetos String. Se:
Teststringcomparison4.java
class Teststringcomparison4{ public static void main(String args[]){ String s1='Sachin'; String s2='Sachin'; String s3='Ratan'; System.out.println(s1.compareTo(s2));//0 System.out.println(s1.compareTo(s3));//1(because s1>s3) System.out.println(s3.compareTo(s1));//-1(because s3 <s1 ) } < pre> <span> Test it Now </span> <p> <strong>Output:</strong> </p> <pre> 0 1 -1 </pre> <a href="/java-string-compareto">Click me for more about compareTo() method</a> <hr></s1>Clique em mim para saber mais sobre o método compareTo()