var中的Swift函数
我正在学习Swift,想知道如何向var添加函数 这里是JS示例var中的Swift函数,swift,Swift,我正在学习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 = {
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代码来调用操作内部的函数呢
干杯您可以为此使用元组:
let operations = (
suma: suma
multiplica: multiplica
)
print("sua operatio", operations.suma(2, 3)
请注意,名称是重复的。:
前面的那一个只是一个标签,您可以用名称来引用它,而:
后面的那一个实际上是指函数
我建议不要用JS风格编写Swift代码。您不应该像这样将函数分组在一起。改为编写一个类/结构,并在其中声明函数。必要时使用static
。您可以为此使用元组:
let operations = (
suma: suma
multiplica: multiplica
)
print("sua operatio", operations.suma(2, 3)
请注意,名称是重复的。:
前面的那一个只是一个标签,您可以用名称来引用它,而:
后面的那一个实际上是指函数
我建议不要用JS风格编写Swift代码。您不应该像这样将函数分组在一起。改为编写一个类/结构,并在其中声明函数。必要时使用
static
。正如Sweeper在他的回答中提到的,与JS代码相当的Swift可能是一个具有静态函数的类
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))")
正如Sweeper在他的回答中提到的,JS代码的Swift等价物可能是一个具有静态函数的类
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))")