用Java实现写一个方法void sanjiao(int a,int b,int c),判断三个参数是否能构成一个三角形, 如果不能则抛出异常IllegalArgumentException,显示异常信息a,b,c+”不能构成三角 形”, 如果可以构成则显示三角形三个边长,在主方法中得到命令行输入的三个整数, 调用此方法, 并捕获异常
时间: 2024-04-13 10:31:17 浏览: 100
以下是用Java实现的根据题目要求编写的方法`sanjiao`,以及在主方法中获取命令行输入的三个整数并调用该方法并捕获异常的代码:
```java
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
try {
System.out.print("请输入第一个整数: ");
int a = Integer.parseInt(scanner.nextLine());
System.out.print("请输入第二个整数: ");
int b = Integer.parseInt(scanner.nextLine());
System.out.print("请输入第三个整数: ");
int c = Integer.parseInt(scanner.nextLine());
sanjiao(a, b, c);
} catch (NumberFormatException e) {
System.out.println("请输入整数");
} catch (IllegalArgumentException e) {
System.out.println(e.getMessage());
}
}
public static void sanjiao(int a, int b, int c) {
if (a <= 0 || b <= 0 || c <= 0 || a + b <= c || a + c <= b || b + c <= a) {
throw new IllegalArgumentException(a + "," + b + "," + c + " 不能构成三角形");
} else {
System.out.println("可以构成三角形,三个边长为: " + a + ", " + b + ", " + c);
}
}
}
```
在主方法中,我们使用`Scanner`类从命令行获取用户输入的三个整数。然后,我们调用`sanjiao`方法,并在`sanjiao`方法中进行三角形判断。如果无法构成三角形,我们抛出`IllegalArgumentException`异常,并显示异常信息"a,b,c 不能构成三角形"。如果可以构成三角形,我们打印输出三个边长。同时,我们捕获可能发生的异常,如输入非整数或参数不足的情况,并进行相应的处理。
阅读全文