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

IntelliJ中Java Scanner无法读取输入问题求助

解决IntelliJ中Scanner无法读取输入的问题

先排查代码问题

  • 检查是否存在提前终止程序的代码:比如在Scanner读取输入前调用了System.exit(0),导致程序直接退出,根本没走到输入逻辑。
  • 确认Scanner初始化正确:必须基于System.in创建实例,即Scanner scanner = new Scanner(System.in);,如果用了其他输入流,会导致无法读取控制台输入。
  • 处理输入时的换行残留:如果之前用了nextInt()/nextDouble()等方法,这些方法不会读取换行符,后续调用nextLine()会直接读取空字符串,看起来像是没读取输入。解决方法是在nextInt()后加一行scanner.nextLine()消耗掉换行符。

IntelliJ设置调整

  • 启用控制台模拟终端:
    1. 点击顶部菜单Run > Edit Configurations
    2. 在左侧选中你的Java运行配置
    3. 在右侧Configuration标签页,找到Emulate terminal in output console选项并勾选
    4. 点击Apply后重新运行程序
  • 尝试独立终端运行:如果上述方法无效,勾选Run in dedicated terminal选项,让程序在独立终端窗口运行,避免控制台交互异常。

其他排查方向

  • 升级IntelliJ到最新稳定版:旧版本可能存在控制台交互的bug,更新后可解决部分兼容问题。
  • 重启IntelliJ:缓存或临时状态异常可能导致奇怪的交互问题,重启IDE后再测试。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.23 06:22:03