Comparacao com String

Deve ser uma coisa muito simples, mas nao estou conseguindo fazer.
Quero verificar uma condicao com string e nao consigo.
Por exemplo

if (resp == “sim”){
(faca alguma coisa)
}
mesmo se a resposta for sim o controle nao entra no if. Os dados estao sendo entrados pelo JOptionPane.InputDialog.

ou na estrutura de controle

while ( resp== “sim”) {
(faca alguma coisa)
}

nao executa o while. Entrada tbm pelo JOptionPane.
Em outras linguagens isso funciona normalmente. O que preciso fazer para funcionar em java. O recurso que tenho usado é atribuir numeros nas janelas de entradas (ex 1: sim e 2: nao) para o ususario entrar. Mas gostaria de trabalhar com string.
Alguem pode me ajudar?

Olá amigo.

Java realmente nao faz esse tipo de comparaçao, pelo menos nao da forma que você tento. A classe String tem o método .equals().

No seu caso, ficaria assim:

if (resp.equals("sim")){
(faca alguma coisa)
}

ok?!