Não consigo resolver o boolean

Gente, estou com um problema no meu código. Quero encerrar o programa quando a entrada é ‘nao’. Não estou conseguindo fazer do jeito que eu gostaria, mas quando substituo a string por número, funciona. Podem me ajudar, por favor?
Esse é o código que não funciona com string, entra em loop:

     boolean encerrar = true;
     Scanner sc = new Scanner(System.in);
	
	while(encerrar) {
		System.out.println("Digite o nome do cômodo ou 'nao' para encerrar: ");
		comodo = sc.nextLine();
		if (comodo == "nao") {
			encerrar = false;
			System.out.println("Fim");
		}else {
			System.out.println("Insira novo cômodo: ");
		}
		
	}
	
	sc.close(); 

Mas se eu só trocar COMODO por LARGURA e por 0 como condicional para encerrar, funciona:

    boolean encerrar = true;
	
	Scanner sc = new Scanner(System.in);
	
	while(encerrar) {
		System.out.println("Digite o nome do cômodo ou 'nao' para encerrar: ");
		//comodo = sc.nextLine();
		largura = sc.nextDouble();
		//if (comodo == "nao") {
		if (largura == 0) {
			encerrar = false;
			System.out.println("Fim");
		}else {
			System.out.println("Insira novo cômodo: ");
		}
		
	}
	
	sc.close();

}

troque por:
if (comodo.equals( “nao”)) {

A String é um objeto e a comparação e feita com equals.

Deu certo, muito obrigada!