在Swift 3.0中NSMutableSet的componentsByString

时间:2017-09-10 17:58:04

标签: swift nsset nsmutableset

我有标签和NSMutable Set。

我想将我的设定值分配给label.text。

  @IBOutlet var location: UILabel!
 var mutSet:NSMutableSet = NSMutableSet()

        self.location.text = **mutSet.allObjects.componetsJoinedByString("\n")**

mutSet.allObjects.componetsJoinedByString(" \ n")抛出编译时错误 同样我尝试加入,它也会抛出编译时错误。

请在Swift中提供替代方法

1 个答案:

答案 0 :(得分:1)

首先回答你的问题:你必须写

(mutSet.allObjects as! [String]).joined(separator: "\n")

NS(Mutable)Set缺少任何类型信息。您必须将类型转换为实际[String]

强烈建议您使用原生Set,一般情况下,如果有本地副本,则不建议您使用NSMutable...类型。

var mutSet = Set<String>(["a", "b", "c"])

你可以追加(实际上insert)一个项目 - 一个集合是无序的

mutSet.insert("d")

或项目数组

mutSet.formUnion(["c", "d", "f"])

加入比基金会NSMutableSet

短得多
mutSet.joined(separator: "\n")

或已整理加入

mutSet.sorted().joined(separator: "\n")