从Swift上的NSMutableArray获取NSString

时间:2015-06-22 18:52:33

标签: swift nsmutablearray

如何从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。

1 个答案:

答案 0 :(得分:0)

尝试componentsJoinedByString

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

但是你应该使用Swift的内置String和Array类型来使它更加类型安全。

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)
}