java设计一个面积类(Area),类内有getArea方法用于求面积,当该方法只有一个参数(double r)时,getArea是计算圆的面积(3.14*r*r);当方法有两个参数(double length,double width)时,getArea是计算长方形的面积(length*width);当方法有三个参数(double up,double low,double hight)时,getArea是计算梯形的面积((up+low)*hight*0.5)。在main方法中,先确定输入的数量N, 再输入数值,调用getArea,计算面积,并输出结果(保留小数点后两位)。
时间: 2023-06-03 18:04:10 浏览: 89
好的,这是一个关于Java面积类的问题,属于技术类问题。以下是代码实现:
```java
import java.text.DecimalFormat;
public class Area{
public static void main(String[] args){
int N = 0;
double[] params = null;
// 获取参数数量N
System.out.println("请输入参数数量N:");
try{
N = Integer.parseInt(System.console().readLine());
} catch(Exception e){
System.out.println("参数数量输入有误,请重新输入!");
System.exit(0);
}
params = new double[N];
// 获取参数值
for(int i = 0; i < N; i++){
System.out.print("请输入第" + (i+1) + "个参数:");
try{
params[i] = Double.parseDouble(System.console().readLine());
} catch(Exception e){
System.out.println("参数输入有误,请重新输入!");
System.exit(0);
}
}
// 计算面积
double area = 0d;
if(N == 1){
area = getArea(params[0]);
} else if(N == 2){
area = getArea(params[0], params[1]);
} else if(N == 3){
area = getArea(params[0], params[1], params[2]);
} else{
System.out.println("参数数量有误,无法计算面积!");
System.exit(0);
}
// 输出结果
DecimalFormat df = new DecimalFormat("#.00");
System.out.println("面积为:" + df.format(area));
}
// 计算圆的面积
private static double getArea(double r){
return 3.14 * r * r;
}
// 计算长方形的面积
private static double getArea(double length, double width){
return length * width;
}
// 计算梯形面积
private static double getArea(double up, double low, double hight){
return (up + low) * hight * 0.5;
}
}
```
使用时先输入参数数量N,再输入对应的参数值,程序会根据参数数量调用不同的getArea方法计算面积,并输出结果。
阅读全文