Swift 从 NSMutableArray 获取 NSString

Get NSString from NSMutableArray on Swift

如何在 for 循环中从使用 NSStrings 创建的 NSMutableArray 获取 NSString?我想在一个 NSString 中存储 NSMutableArray 的所有元素。这是我的代码:

class Persona: NSObject {

    var edad: Int
    var altura: Double
    var nombre: NSString
    var apellido: NSString
    var cualidades: NSMutableArray

    init(edad:Int, altura:Double, nombre:NSString, apellido:NSString, cualidades:NSMutableArray){
        self.edad = edad
        self.altura = altura
        self.nombre = nombre
        self.apellido = apellido
        self.cualidades = cualidades
    }

    func addCualidad(cualidad:NSString){
        cualidades.addObject(cualidad)
    }

    func delCualidad(cualidad:NSString){
        cualidades.removeObject(cualidad)
    }

    func cualidadesToString() -> NSString{
        var string:NSString = ""
        for cualidad in cualidades{

            // TODO HERE
            cualidad...

        }
        return cualidad
    }

}

如您所见,我希望在 cualidadesToString() 方法中返回 NSString。

尝试componentsJoinedByString

func cualidadesToString() -> NSString{
    return cualidades.componentsJoinedByString(",")
}

但是您应该使用 Swift 的内置字符串和数组类型以使其更加类型安全。

var cualidades = [String]()

func addCualidad(cualidad: String){
    cualidades.append(cualidad)
}

func delCualidad(cualidad: String){
    if let cindex = find(cualidades, cualidad) {
        cualidades.removeAtIndex(cindex)
    }
}

func cualidadesToString() -> String{
    return join(", ", cualidades)
}