我正在学习Swift,想知道如何向var中添加函数,
这里的JS例子..。
function suma (a, b){
return a + b
}
console.log("sua suma::", suma(2,3))
function multiplica (a, b){
return a * b
}
console.log("sua multiplik::", multiplica(2,3))
const operations = {
suma,
multiplica
}
console.log ("sum of first class::", operations.suma(2,3))
console.log ("mult of first class::", operations.multiplica(2,3))那么,如何在Swift上实现同样的目标呢?
在这里,我已经尝试过:
import Foundation
func suma(a:Int, b:Int) -> Int {
return a + b
}
func multiplica(a:Int, b:Int) -> Int {
return a * b
}
print("sua suma", suma(a: 2, b: 3))
print("sua multiplica", multiplica(a: 2, b: 3))
var operations = {
suma
multiplica
}
print("sua operatio", operations.suma(a: 2, b: 3)那么如何编辑Swift代码来调用函数内部的操作呢?
干杯
发布于 2020-11-12 06:16:34
为此,您可以使用一个元组:
let operations = (
suma: suma
multiplica: multiplica
)
print("sua operatio", operations.suma(2, 3)请注意,名称是重复的。:前面的那个只是一个标签,所以您可以用一个名称来引用它,而在:之后的那个实际上是指函数。
我建议不要用JS风格编写Swift代码。您不应该像这样将函数组合在一起。相反,编写一个类/struct,并在其中声明函数。必要时使用static。
发布于 2020-11-12 06:24:16
正如Sweeper在他的回答中所提到的,Swift相当于JS代码很可能是一个具有静态函数的类。
class Operations {
static func suma(a:Int, b:Int) -> Int {
return a + b
}
static func multiplica(a:Int, b:Int) -> Int {
return a * b
}
}您可以这样调用这些函数
print("sua operatio \(Operations.suma(a: 2, b: 3))")https://stackoverflow.com/questions/64798744
复制相似问题