虽然我的代码中没有退出循环

时间:2014-11-09 17:35:54

标签: java loops while-loop equals do-while

当我输入“não”或“nao”时,我需要循环结束,但它永远不会结束。

这是代码:

do {
        System.out.println("Digite o primeiro valor a ser trocado:");
        t1.setValor1(input.nextInt());

        System.out.println("Digite o segundo valor a ser trocado:");
        t1.setValor2(input.nextInt());

        t1.trocarValores(t1.valor1, t1.valor2);
        System.out.println(t1);
        input.nextLine();

        System.out.println("\nVoce gostaria de trocar outro número? Digite 'sim' ou 'não'.");
        parar = input.nextLine();
    }while(!"não".equalsIgnoreCase(parar) || !"nao".equalsIgnoreCase(parar));

如果我切断了“(!”não“.equalsIgnoreCase(parar)”并只留下“!”nao“.equalsIgnoreCase(parar)”,它可以工作,但我不知道为什么._。

谢谢大家!

嗯,看起来问题与||有关和我的“não”中的“〜”,现在,如何修复“〜”?我希望它与确切的“não”一起工作。谢谢!

2 个答案:

答案 0 :(得分:3)

更改

while(!"não".equalsIgnoreCase(parar) || !"nao".equalsIgnoreCase(parar));

while(!"não".equalsIgnoreCase(parar) && !"nao".equalsIgnoreCase(parar));

"não" or "nao"相反的是not "não" and not "nao"

答案 1 :(得分:0)

while(!(“não”.equalsIgnoreCase(parar)||“nao”.equalsIgnoreCase(parar)));