方法的重载相关习题(Java实现)
1、 在同一个类中,分别定义求两个整数的方法 和 三个小数之和的方法。
public class Test {
//在同一个类中,分别定义求两个整数的方法 和 三个小数之和的方法。
public static void main(String[] args) {
int a = 2;
int b = 3;
double c = 2.2;
double d = 3.3;
double e = 4.4;
int ret = (add(a, b));
double tmp = (add(c, d, e));
System.out.println(ret + " " + tmp);
}
private static int add(int a,int b) {
return a + b;
}
private static double add(double c, double d, double e) {
return c + d + e;
}
}
2、在同一个类中定义多个方法:要求不仅可以求两个整数的最大值,还可以求两个小数的最大值,以及两个小数和一个整数的大小关系。
public class Test {
//在同一个类中定义多个方法:要求不仅可以求两个整数的最大值,
// 还可以求两个小数的最大值,以及两个小数和一个整数的大小关系。
public static void main(String[] args) {
int a1 = 1;
int b1 = 2;
System.out.println(max(a1, b1));
double a2 = 1.1;
double b2 = 2.2;
System.out.println(max(a2, b2));
System.out.println(max(a2, b2, b1));
}
private static int max(int a, int b) {
if (a > b) {
return a;
} else {
return b;
}
}
private static double max(double a, double b) {
if (a > b) {
return a;
} else {
return b;
}
}
private static double max(double a, double b,int c) {
double temp = (a > b ? a : b) > c ? (a > b ? a : b) : c;
return temp;
}
}
总结: 在同一个类中,方法名相同,但是方法的参数不同(参数个数或者参数类型)就可以构成方法的重载。(重载和返回值类型无关)
