swift定义一个泛型函数,实现两个数值相加。 (3) 定义两个Int类型的变量,调用泛型函数。 (4) 定义两个Double类型的变量,调用泛型函数。 (5) 给泛型函数传入一个Int值和一个Double值,看程序是否报错。
时间: 2024-03-06 08:47:38 浏览: 133
好的,以下是对应的 Swift 代码实现:
```swift
// 定义泛型函数,实现两个数值相加
func add<T: Numeric>(_ a: T, _ b: T) -> T {
return a + b
}
// 定义两个 Int 类型的变量,调用泛型函数
let int1 = 10
let int2 = 20
let intSum = add(int1, int2)
print(intSum) // 输出 30
// 定义两个 Double 类型的变量,调用泛型函数
let double1 = 1.23
let double2 = 4.56
let doubleSum = add(double1, double2)
print(doubleSum) // 输出 5.79
// 给泛型函数传入一个 Int 值和一个 Double 值,不会报错
let mixedSum = add(10, 1.23)
print(mixedSum) // 输出 11.23
```
以上代码中,泛型函数 `add` 使用了 `Numeric` 协议来限制泛型类型的范围,保证 `a` 和 `b` 的类型必须是数值类型,可以是 `Int`、`Double` 等。然后通过 `return a + b` 返回两个数值的和。最后我们定义了两个 `Int` 类型的变量 `int1` 和 `int2`,以及两个 `Double` 类型的变量 `double1` 和 `double2`,并分别调用 `add` 泛型函数来计算它们的和,并通过 `print` 函数输出结果。最后我们还测试了给泛型函数传入一个 `Int` 值和一个 `Double` 值的情况,可以正常计算并返回结果。
阅读全文