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

如何传入参数避免Java程序的java.lang.NumberFormatException错误?

解决RightTriangle代码的NumberFormatException问题

咱们先揪出你遇到错误的根源:日志里明明白白写着java.lang.NumberFormatException: For input string: "console"——你的代码里用Integer.parseInt(args[0])、Integer.parseInt(args[1])、Integer.parseInt(args[2])把命令行传入的三个参数都转成整数,但你传的第三个参数是console,这根本不是数字,转换自然就失败抛出异常了。

这个代码的作用是判断三个数能不能构成直角三角形,所以你得传入三个正整数作为命令行参数才行。在IntelliJ里设置参数的步骤很简单:

  • 点击右上角的运行配置下拉框,选择「Edit Configurations」
  • 在打开的窗口里找到你的RightTriangle运行配置,在「Program arguments」输入框中填写三个正整数,比如3 4 5(数字之间用空格分隔)
  • 保存配置后重新运行代码,就能正常执行了

给你几个测试的例子参考:

  • 输入3 4 5:代码会输出true,因为3²+4²=5²,完全符合直角三角形的条件
  • 输入1 2 3:代码输出false,这三个数不满足勾股定理
  • 输入5 12 13:输出true,这是另一个经典的直角三角形边长组合

另外要注意,代码里还加了c>0 && b>0 && a>0的判断,所以传入的数字必须都是正数——哪怕满足勾股定理,只要传了负数或者0,最终都会输出false。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.09 00:32:53