java - 我应该在这个程序中传递什么参数以避免 java.lang 错误?
问题描述
这是我试图运行的编:
public class RightTriangle {
public static void main(String args[]) {
int a = Integer.*parseInt*(args[0]);
int b = Integer.*parseInt*(args[1]);
int c = Integer.*parseInt*(args[2]);
System.out.println((c*c==a*a+b*b||b*b==a*a + c*c ||a*a == b*b + c*c)&&(c>0 && b>0 && a>0));
}
}
我在 IntelliJ 上运行这个 prog 时遇到这个错误:--
"C:\Program Files\Java\jdk-14.0.2\bin\java.exe" "-javaagent:C:\Users\anuavi\IntelliJ IDEA Community Edition 2020.2.1\lib\idea_rt.jar=58608:C:\Users\anuavi\IntelliJ IDEA Community Edition 2020.2.1\bin" -Dfile.encoding=UTF-8 -classpath C:\Users\anuavi\IdeaProjects\java1\out\production\java1 RightTriangle console
Exception in thread "main" java.lang.NumberFormatException: For input string: "console"
at java.base/java.lang.NumberFormatException.forInputString(NumberFormatException.java:68)
at java.base/java.lang.Integer.parseInt(Integer.java:652)
at java.base/java.lang.Integer.parseInt(Integer.java:770)
at RightTriangle.main(RightTriangle.java:7)
进程以退出代码 1 结束
我不明白为什么当我从合法来源复制代码时显示错误?
解决方案
你目前正在传递什么论点?您的应用程序正在尝试将“控制台”字符串转换为数字,因此出现错误:
java.lang.NumberFormatException: For input string: "console"
推荐阅读
- arrays - 在使用 for 循环读取 Bash 中的数组时,它只能打印第一个和最后一个值
- azure-devops - 拉取请求触发器正在为所有分支推送运行管道
- java - 如何在java中的exec中运行psql命令
- angular - 如何基于 Components 属性添加 css 类属性
- javascript - 使用 MakeStyles 更改 SVG 填充颜色:如何使用选择器在 SVG 文件中选择特定 ID?
- angular - 带有角度的未处理错误的通用处理程序
- python - 事件日历覆盖周
- android - 从 url 下载和存储图像列表
- java - 如何在 JPA 中连接多个数据库?
- java - 网络发现 Hyperledger Fabric