swift中具有多个参数的函数
Posted
技术标签:
【中文标题】swift中具有多个参数的函数【英文标题】:Function with multiple parameters in swift 【发布时间】:2019-01-16 11:19:07 【问题描述】:我需要定义并调用一个名为areaOfRectangle
的函数,它接受两个Int
参数length
和width
,并打印length * width
的结果。我实际上得到了length * width
的结果,但它告诉我要确保我定义了一个具有正确名称和参数的函数。下面的答案将打印length * width
,这是正确的,但步骤不是应该的。
func areaOfRectangle(length: Int, width: Int)
print(“length * width”)
areaOfRectangle(length: 0, width: 0)
【问题讨论】:
查看Printing constants and Variables。 【参考方案1】:您已经正确定义了函数,但在前面的语句中犯了一个小错误,因为它总是在输出控制台中将 length * width 打印为字符串而不是运算符或操作数。这是解决方案
func areaOfRectangle(length: Int, width: Int)
print("\(length * width)")
areaOfRectangle(length: 0, width: 0)
只是在打印语句中添加了'\'()
【讨论】:
希望这可以帮助您编写代码。如果您认为答案有帮助,请单击 TICK 符号并接受答案。谢谢【参考方案2】:这是您可以从Int
参数中获得return
字符串结果的方式:
//define a return type as String here
func areaOfRectangle(length: Int, width: Int) -> String
print("\(length * width)") //same thing you can print here
return "\(length * width)" //return it as String
let result = areaOfRectangle(length: 5, width: 5)
print(result) //"25"
【讨论】:
我想打印“长度 * 宽度”所以答案是正确的,但步骤不正确。 你说的print
是什么意思,能详细点吗?【参考方案3】:
print(“length * width”)
在此语句中,长度和宽度被视为字符串文字。任何出现在 "" 之间的东西至少在 swift 中都是字符串文字,在其他一些语言中也是如此。
通过将vars
和lets
放在\()
中,Swift 提供了一个非常好的语法糖来使用字符串中的变量和常量。因此,当您将上述语句更正为print(“\(length * width)”)
时。它将打印长度*宽度的正确结果。
更新代码:
func areaOfRectangle(length: Int, width: Int)
print(“\(length * width)”) //42
areaOfRectangle(length: 6, width: 7)
【讨论】:
【参考方案4】:说明: 具有多个参数的函数。,其中函数 greet 的参数为 alreadyGreeted 也是一个条件,当我们给出 person 的参数标签并且 bool 为真时,它会检查,我们调用它,函数将开始执行......条件被检查, .然后使用其参数标签调用 greetAgain 函数...并使用 greet-main 函数调用参数中的人名打印“hello Again”。
【讨论】:
正如目前所写,您的答案尚不清楚。请edit 添加其他详细信息,以帮助其他人了解这如何解决所提出的问题。你可以找到更多关于如何写好答案的信息in the help center。【参考方案5】:func tenFuncReturn (_ a: Int) -> (Int) -> (Int) -> (Int) -> (Int) -> (Int) -> (Int) -> (Int) -> (Int) -> (Int) -> Int
func one(b: Int) -> (Int) -> (Int) -> (Int) -> (Int) -> (Int) -> (Int) -> (Int) -> (Int) -> Int
func two(c: Int) -> (Int) -> (Int) -> (Int) -> (Int) -> (Int) -> (Int) -> (Int) -> Int
func three(d: Int) -> (Int) -> (Int) -> (Int) -> (Int) -> (Int) -> (Int) -> Int
func four (e: Int) -> (Int) -> (Int) -> (Int) -> (Int) -> (Int) -> Int
func five (f: Int) -> (Int) -> (Int) -> (Int) -> (Int) -> Int
func six(g: Int) -> (Int) -> (Int) -> (Int) -> Int
func seven(h: Int) -> (Int) -> (Int) -> Int
func eight(i: Int) -> (Int) -> Int
func nine(j: Int) -> Int
return a + b + c + d + e + f + g + h + i + j
return nine
return eight
return seven
return six
return five
return four
return three
return two
return one
打印(tenFuncReturn(2)(2)(2)(2)(2)(2)(2)(2)(2)(2))
【讨论】:
以上是关于swift中具有多个参数的函数的主要内容,如果未能解决你的问题,请参考以下文章
如何在 Swift 4 中使用 Alamofire 上传具有其他参数的多个图像
如何在 Swift 中使用 Alamofire 与 Multipart 一起使用具有不同键和多种参数的多个图像
Swift - 在具有可选参数的泛型函数中以 Nil 作为参数