编写程序,重载两个整数和三个双精度浮点数,求和的函数
时间: 2024-09-15 15:07:38 浏览: 51
在编写程序时,为了处理整数和浮点数的加法,并实现多态性,你可以创建一个通用的函数模板,这个模板接受任意类型的数值,然后根据传入的具体类型自动转换并计算和。这通常通过泛型(Generics)在Java中实现,或者类似C++中的模板函数。这里给出一个Java的例子:
```java
public class NumberAdder<T extends Number> {
public T add(T num1, T num2) {
return (T)(num1.doubleValue() + num2.doubleValue());
}
public static void main(String[] args) {
NumberAdder<Integer> intAdder = new NumberAdder<>();
System.out.println(intAdder.add(5, 10)); // 输出:15
NumberAdder<Double> doubleAdder = new NumberAdder<>();
System.out.println(doubleAdder.add(3.14, 2.71)); // 输出:5.85
}
}
```
在这个例子中,`NumberAdder`类中的`add`方法是一个泛型方法,它接受一个`T`类型的参数,而`T`必须是`Number`类或其子类(如`Integer`或`Double`)。当调用方法时,会自动将整数转换成`double`,然后再进行加法运算。
阅读全文