方法的重载相关习题(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; } }
总结: 在同一个类中,方法名相同,但是方法的参数不同(参数个数或者参数类型)就可以构成方法的重载。(重载和返回值类型无关)