题目
利用方法重载定义平均值的方法average(),既能求三个整数的平均值又能求两个整数的平均值。根据题意完程序的空格处填空public class Test2 { public static _ average ( int a , int b , int c ) { return ( a + b + c ) / 3.0 ; } public static double average ( int a , int b ) { return _ ; }}
利用方法重载定义平均值的方法average(),既能求三个整数的平均值又能求两个整数的平均值。根据题意完程序的空格处填空
public class Test2 {
public static _ average ( int a , int b , int c ) {
return ( a + b + c ) / 3.0 ;
}
public static double average ( int a , int b ) {
return _ ;
}
}
题目解答
答案
1. 首先定义一个方法average(),参数为三个整数,返回值为double,计算三个数的平均值。
2. 然后利用方法重载,定义另一个方法average(),参数为两个整数,返回值为double,计算两数的平均值。
3. 由于两个方法同名,参数不同,属于方法重载,执行时会根据传参自动调用对应方法。
4. 代码实现:
public class Test2 {
public static double average ( int a , int b , int c ) {
return ( a + b + c ) / 3.0 ;
}
public static double average ( int a , int b ) {
return (a + b) / 2.0;
}
}
解析
步骤 1:定义方法average(),参数为三个整数,返回值为double,计算三个数的平均值。
- 由于返回值为double,需要将整数除法转换为浮点数除法,因此除数为3.0。
步骤 2:利用方法重载,定义另一个方法average(),参数为两个整数,返回值为double,计算两数的平均值。
- 同样,为了得到浮点数结果,除数应为2.0。
步骤 3:由于两个方法同名,参数不同,属于方法重载,执行时会根据传参自动调用对应方法。
- 由于返回值为double,需要将整数除法转换为浮点数除法,因此除数为3.0。
步骤 2:利用方法重载,定义另一个方法average(),参数为两个整数,返回值为double,计算两数的平均值。
- 同样,为了得到浮点数结果,除数应为2.0。
步骤 3:由于两个方法同名,参数不同,属于方法重载,执行时会根据传参自动调用对应方法。