Pessoal,
Estava fazendo um código que trabalhava de um certo modo se a String fosse vazia.
Para isso, fiz o seguinte:
if(palavra == "")
Mas não funcionava de modo algum.
Fiz então o seguinte:
if(palavra == null)
Também não funcionou, mas isso funcionou:
if(palavra.isEmpty())
Gostaria de entender o motivo do problema e a diferença entre esses três métodos.
Além disso, li também aqui no fórum um amigo explicando sobre a diferença entre
== e equals, mas no caso de objetos. E entendi a explicação a respeito do ‘pool’
de Strings do Java, mas e no caso de uma constante?
Por exemplo:
Existe diferença entre palavra.equals(null) e palavra == null ?
e entre palavra.equals("") e palavra == "" ?