Sen*_*ful 4 set type-conversion nsset swift
我可以从 NSMutableSet 转换为 Set 没问题,但我在做相反的事情时遇到了问题。
例如这有效:
let nsSet = NSMutableSet(array: ["a", "b"])
let swiftSet = nsSet as! Set<String>
Run Code Online (Sandbox Code Playgroud)
但是当我尝试:
let nsSet2 = swiftSet as? NSMutableSet
Run Code Online (Sandbox Code Playgroud)
nsSet2最终成为nil.
看起来需要先将 swift Sets 转换为 NSSet :
let nsSet2 = NSMutableSet(set: set as NSSet)
Run Code Online (Sandbox Code Playgroud)
或简写:
let nsSet2 = NSMutableSet(set: set)
Run Code Online (Sandbox Code Playgroud)
或者从 NSSet 到 Swift Set 再回到 NSSet:
let nsSet = NSMutableSet(array: ["a", "b"])
let set = nsSet as! Set<String>
let nsSet2 = set as NSSet
let nsSet3 = NSMutableSet(set: nsSet2)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2102 次 |
| 最近记录: |