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

Java中如何使用while循环持续获取用户输入直到用户选择终止

Java 计算幂次程序循环交互调整方案

核心修改点

  • 外层增加 while(true) 死循环包裹原有输入、计算逻辑
  • 每次计算完成后新增用户是否退出的判断逻辑,用户输入终止指令时调用break跳出循环
  • 补充Scanner输入缓冲区清空处理,避免数字读取后残留的换行符导致后续输入读取异常

注:原有幂计算逻辑仅支持Y为非负整数的场景,若需要支持负指数,可修改返回值类型为double,并补充y<0的分支判断逻辑。

修改后完整代码

import java.util.*;

public class Test42 {
    static int power(int x, int y) {
        if (y == 0)
            return 1;
        else if (y % 2 == 0)
            return power(x, y / 2) * power(x, y / 2);
        else
            return x * power(x, y / 2) * power(x, y / 2);
    }

    public static void main(String... args) {
        Scanner adnan = new Scanner(System.in);
        // 死循环持续接收输入
        while (true) {
            System.out.println("Enter the value of X:");
            int x = adnan.nextInt();
            System.out.println("Enter the value of Y:");
            int y = adnan.nextInt();
   
            System.out.println("The result is: " + power(x, y));
            
            // 询问是否继续
            System.out.println("输入q退出程序,输入其他任意字符继续计算:");
            // 先清空nextInt残留的换行符
            adnan.nextLine();
            String input = adnan.nextLine();
            if ("q".equalsIgnoreCase(input)) {
                System.out.println("程序终止");
                break;
            }
        }
        adnan.close();
    }
}

功能说明

程序启动后会循环要求用户输入X和Y的值,计算幂次后输出结果,每次计算完成后用户可选择是否继续,输入q(不区分大小写)即可终止程序运行。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.03 18:06:03