产品方法重载

所以我在CodeHS上处理这个问题,然后我被困了这么久,于是决定在这里问。

练习是使产品方法超载,以允许将其他类型的值相乘:

  1. 两个双打
  2. 一个int和一个double
  3. 一个double和一个int
  4. 三个整数
  5. 三个双打

    public class Product extends ConsoleProgram { public void run() { int intValue = 5; double doubleValue = 2.5; int product1 = product(intValue, intValue); System.out.println(product1); // Use method overloading to define methods // for each of the following method calls double product2 = product(doubleValue, doubleValue); System.out.println(product2); int product3 = product(intValue, intValue, intValue); System.out.println(product3); double product4 = product(intValue, doubleValue); System.out.println(product4); double product5 = product(doubleValue, intValue); System.out.println(product5); double product6 = product(doubleValue, doubleValue, doubleValue); System.out.println(product6); } public int product(int one, int two) { return one * two; } } 

谢谢

请注意,重载意味着,方法的名称和返回类型保持与原始/初始方法相同。

那么你需要定义/实现那些方法>

2个双打将是:

 public int product(double one, double two) { return (int)(one * two); } 

一个int和一个double会

 public int product(int one, double two) { return (int)(one * two); } 

等等

方法重载意味着您​​可以通过更改这些方法参数(参数计数,参数类型和参数模式)来创建具有相同方法名称的方法。 方法名称和参数的组合也称为方法签名

以下是方法重载的示例。

 public void int myMethod(){} public void int myMethod(int a){} public void String myMethod(String a){} public void double myMethod(int a , String a){} public void int myMethod(String a,int a){} 

请注意,您不能通过更改返回类型来重载方法