gpt4 book ai didi

ios - Swift NSString 函数语法用法

转载 作者:搜寻专家 更新时间:2023-10-31 08:23:52 26 4
gpt4 key购买 nike

我有一个关于 swift 函数调用语法的基本问题。我已阅读文档但无法弄清楚。所以决定在这里提问。

我写的一段代码

    var string1 = NSString().stringByAppendingString("First string")
var string2 = NSString.stringByAppendingString("Second string")

println(string1)
println(string2)

两个字符串都有相同的函数调用,但返回类型不同。这里唯一的区别是 ()。我下车了

First string

(Function)

问题是为什么它不给出警告/错误。 var string2 是否保存了 stringByAppendingString 的方法体?怎么回事,像我这样的新 swift 开发人员很容易犯这种类型的拼写错误并且无法弄清楚。

你能解释一下为什么它没有返回值吗?

最佳答案

发生这种情况是因为 swift 方法是柯里化(Currying)函数(您可以在 Ole Begemann's post 中找到详细说明)。

那么您在以下行中实际得到的是什么:

var string2 = NSString.stringByAppendingString("Second string")

是一个函数,它接受一个字符串作为参数并返回

的结果
"Second string".stringByAppendingString(parameter)

您可以通过将 string2 作为普通函数调用来检查:

string2("123")
// Prints: "Second string123"

关于ios - Swift NSString 函数语法用法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26928851/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com