Importante

Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!

1
resposta

Dúvida sobre a string e o ==

Gostaria de saber por que neste caso, ele apresenta como false:

String s5 = "s1";
 String s6 = s1.substring(0, 1) + s1.substring(1,2);
System.out.println(s5==s6);

E neste caso ele apresenta o resultado como true, sendo que os dois retornam a mesma string:

 String s1 = "s1";
        String s2 = s1.substring(0, 2);
        System.out.println(s1==s2);
1 resposta

Para Strings utilize

System.out.println(s1.equals(s2));

o operador == compara os objetos e não somente a string, então leva em consideração o endereçamento de memória e outras informações.