微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在 else 子句开始之前退出带有哨兵值的 do 循环

如何解决在 else 子句开始之前退出带有哨兵值的 do 循环

我正在为学校的作业编写一段代码。我已经完成并让它工作正常,但有一件事困扰着我。如何在不打印不是回文的行的情况下退出 do-loop。我只知道这将是一个简单的解决方案,但似乎无法弄清楚。我在主类下面有一些其他方法,但在这个上下文中无关紧要,所以我没有包含它。

import java.util.Scanner;
public class palindrome {

    public static void main(String[] args) {
        String userPhrase;
        Scanner in = new Scanner(system.in);
        do {
            userPhrase = "";
            System.out.print("Enter phrase (done to stop): ");
            userPhrase = in.nextLine();
            userPhrase = userPhrase.toLowerCase();
            userPhrase = delSpecialChar(userPhrase);
            if (palChecker(userPhrase)) {
                System.out.println("That is a palindrome\n");
            } else {System.out.println("That is NOT a palindrome\n");}
        } while (!userPhrase.equals("done"));
        in.close();
    }

这是我输入完成后的样子:

Enter phrase (done to stop): done
That is NOT a palindrome

程序终止

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。