You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Java控制台计算代码:如何通过Y/N输入重复执行计算逻辑?

Java 实现控制台重复计算的解决方案

方案一:使用 do-while 循环(推荐)

把计算逻辑和重复确认逻辑整体放在 do-while 循环中,代码会先执行一次计算,再根据用户输入判断是否继续:

import edu.princeton.cs.algs4.StdIn;

public class Calculator {
    public static void main(String[] args) {
        String yesorno2;
        do {
            // --- 此处放置你的计算逻辑代码 ---
            System.out.println("执行计算操作...");
            // --- 计算逻辑结束 ---

            // 询问是否重复计算
            System.out.println("Wollen Sie die Rechnung nocheinmal ausführen? Y / N");
            yesorno2 = StdIn.readString();
        } while (yesorno2.equals("Y")); // 输入Y则重新执行循环内代码

        // 输入非Y时执行退出提示
        System.out.println("Auf Wiedersehn");
    }
}

方案二:封装计算逻辑为独立方法

如果计算逻辑复杂,可将其抽成单独方法,在需要重复时直接调用:

import edu.princeton.cs.algs4.StdIn;

public class Calculator {
    public static void main(String[] args) {
        String yesorno2;
        do {
            runCalculation(); // 调用计算方法
            // 询问是否重复
            System.out.println("Wollen Sie die Rechnung nocheinmal ausführen? Y / N");
            yesorno2 = StdIn.readString();
        } while (yesorno2.equals("Y"));

        System.out.println("Auf Wiedersehn");
    }

    // 封装计算逻辑的方法
    private static void runCalculation() {
        // --- 你的计算逻辑写在这里 ---
        System.out.println("执行计算操作...");
        // --- 计算逻辑结束 ---
    }
}

额外优化建议

  • 可添加输入校验逻辑,当用户输入非Y/N内容时,提示重新输入,避免程序异常流程
  • 确保项目已正确引入 StdIn 所属的 Princeton 算法库依赖

内容的提问来源于stack exchange,提问作者Noah Beetschen

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.05 14:35:52