我要输入两个数字,要求用方法去求这两个数的平均值 ,求做法
方法还是有的,不用写各种不同参数类型的方法,这里提供一个,主要是利用BigDecimal,不明白的百度下它
public static void main(String[] args) {
//方法调用
System.out.println(avg(12.5,1.5));
}
/**
* 两数平均
* @param num1 数字1
* @param num2 数字2
* @return
*/
public static Number avg(Number num1,Number num2){
BigDecimal n1 = new BigDecimal(num1.toString());
BigDecimal n2 = new BigDecimal(num2.toString());
BigDecimal result = n1.add(n2).divide(new BigDecimal(2));
return result;
}
这个很简单,基本不调用方法也能做。调用方法的话可以这样:
import java.util.*;
/**
* @author CSDN@CTimet
* @date 2021/10/30
*/
public class NUM
{
public static void main(String[] args)
{
//创建一个Scanner对象
var in = new Scanner(System.in);
//读取用户输入
System.out.println("请输入数字1:");
double num1 = in.nextDouble();
System.out.println("请输入数字2:");
double num2 = in.nextDouble();
//关闭in,释放系统资源
in.close();
//创建numr类型的数组,我们使用这个数组来调用方法
var num = new numr[1];
num[0] = new numr(num1,num2);
//调用getResult方法
double re = num[0].getResult();
//向用户输出结果
System.out.print("num1和num2的平均值为:");
System.out.print(re);
}
}
class numr
{
private double Result;
public numr(double num1, double num2) //构造器
{
Result = (num1 + num2)/2;
}
public double getResult()
{
return Result;
}
}