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

如何修复包含用户输入与递归逻辑的存在语法错误的Java代码

Java递归计数程序修复方案

存在的错误汇总

  • 代码中混入了非Java语法的文本内容(如“强调文本”“粗体文本”等标注内容),会直接导致编译失败
  • Scanner对象tuwa1是main方法的局部变量,被错误放到了callMyself递归方法中调用,超出了变量作用域
  • 扫描输入方法拼写错误:nexInt()应为nextInt()
  • System.out.println()语句末尾缺失Java语句必须的结束分号
  • 递归方法callMyself的大括号闭合逻辑错误,和main方法、类的边界混淆
  • 原有逻辑没有将用户输入的数值传递给递归方法,写死了传入10,不符合功能需求
  • 没有关闭Scanner对象,存在资源泄漏隐患

修复后完整可运行代码

package state;
import java.util.Scanner;
public class State {
    public static void main(String[] args) {
        Scanner tuwa1 = new Scanner(System.in);
        System.out.println("Enter Number");
        // 读取用户输入的整数
        int number1 = tuwa1.nextInt();
        // 调用递归方法执行计数
        callMyself(number1);
        // 关闭扫描器释放资源
        tuwa1.close();
        System.out.println();
    }

    /* Java递归倒序计数方法 */
    public static void callMyself(long i) {
        if (i < 0) {
            return;
        }
        System.out.print(i + " ");
        i = i - 1;
        callMyself(i);
    }
}

功能说明

运行程序后会提示用户输入一个整数,输入后程序会从该整数开始倒序计数到0,每个数字之间用空格分隔。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.07 01:15:03