/// If `self == nil`,returns `nil`. Otherwise,returns `f(self!)`.func map<U>(f: (T) -> U) -> U?
当我们要转换Int?到UInt64?,我们可以:
let iVal:Int? = 42let i64Val = iVal.map { UInt64(var i64Val:UInt64?if let iVal = iVal { i64Val = UInt64(iVal)}) }
代替:
/// If `self == nil`,returns `f(self!)`.func map<U>(f: (T) -> U) -> U!
这里,ImplicitlyUnwrappedOptional< T>有相同的方法:
let iVal:Int! = 42let i64Val = iVal.map { UInt64(let i64Val = (iVal as ImplicitlyUnwrappedOptional).map {UInt64()}) } // ^ ~~~ [!] error: 'Int' does not have a member named 'map'
所以我试过……但失败了:(
这是一个问题:我怎么称呼这种方法?
解决方法 总结以上是内存溢出为你收集整理的swift – 如何在ImplicitlyUnwrappedOptional上调用.map()?全部内容,希望文章能够帮你解决swift – 如何在ImplicitlyUnwrappedOptional上调用.map()?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)