简体   繁体   English

While循环未退出我的代码

[英]While loop not exiting in my code

I need my loop to end when i type "não" or "nao", but it never ends. 当我键入“não”或“ nao”时,我需要结束循环,但永不结束。

here's the code: 这是代码:

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));

If i cut off the "(!"não".equalsIgnoreCase(parar)" and leave only the "!"nao".equalsIgnoreCase(parar)", it works, but i have no idea why ._. 如果我剪掉“(!”não“ .equalsIgnoreCase(parar)”并只留下“!” nao“ .equalsIgnoreCase(parar)”,它可以工作,但是我不知道为什么._。

Thanks everyone! 感谢大家!

Well, looks like the problem is with the || 好吧,看来问题出在||上 and the "~" in my "não", so now, how do I fix the "~"? 和“não”中的“〜”,那么现在如何修复“〜”? i want it to work with the exact "não". 我希望它与确切的“não”一起使用。 Thanks! 谢谢!

Change 更改

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

to

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

The opposite of "não" or "nao" is not "não" and not "nao" "não" or "nao"的反义词not "não" and not "nao"

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

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM