从JavaScript和TypeScript转过来,我想试试Go并制作一个简单的计算器。由于int和float之间有差异,编写一个接受任意数字的函数,应该采用哪种方式为佳?
例如:
我需要将所有东西都转换为浮点数(因为它“覆盖”了整数范围),还是为每种类型创建单独的函数,比如
例如:
package main
func add(a float64, b float64) float64 {
return a + b;
}
func main() {
a := 1;
b := 2;
fmt.Println(add(1, 2)); // 3
fmt.Println(add(a, b)); // Cannot use a (type int) as type float64 in argument to add
fmt.Println(add(1.5, 3.2)); // 4.7
fmt.Println(add(2.5, 2)); // 4.5
}
我需要将所有东西都转换为浮点数(因为它“覆盖”了整数范围),还是为每种类型创建单独的函数,比如
addInt(a int, b int) int
和addFloat(a float64, b float64) float64
?或者可能有更优雅的方法吗?