微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

swift是否具有Kotlin中的标准(范围)功能?

在Kotlin我们有一个 standard (scope) functions的清单(例如,让,申请,运行等)

以下用法示例

val str : String? = "123"
str?.let{ print(it) }

这使代码看起来更简洁,无需if(str!= null)

在swift中,我将其编码如下

let str: String? = "123"
if str != nil { print(str!) }

我必须得到str!= nil.认情况下是否提供了我可以使用的(没有我自己写的)?

仅供参考,我是Swift的新手,并且周围的检查似乎没有找到它.

如果您喜欢,请扩展Optional的功能
extension Optional {
    func `let`(do: (Wrapped)->()) {
        guard let v = self else { return }
        `do`(v)
    }
}

var str: String? = "text"
str.let {
    print( $0 ) // prints `text`
}
str = nil

str.let {
    print( $0 ) // not executed if str == nil
}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐