
[英]How to convert object array into Json array or Json string in ios swift?
[英]Convert Object array into String array
如何将该对象数组转换为字符串数组? 我正在读取Firebase集合中的记录。
firebaseDB.collection("message").document(key).collection("messages").getDocuments() { (querySnapshot, err) in
if let err = err {
print("Error getting documents: \(err)")
}
else {
self.driverArr.removeAll()
for document in querySnapshot!.documents {
print("\(document.documentID) => \(document.data())")
let msgdata = document.data() as! [String:Any]
var msgObj = Message()
if let name = msgdata["name"] as? String {
msgObj.name = name
}
self.driverArr.append(msgObj)
}
if self.driverArr.count < 1 {
print("No Drivers")
}
else{
print("*** Driver Names array ***")
print(self.driverArr)
}
}
}
该数组的当前输出为:
[MainApp.Message(name:Optional(“ Oliver”),userId:Optional(“”),msg:Optional(“”),creatAt:Optional(0),纬度:Optional(“”),经度:Optional(“ “)),MainApp.Message(名称:Optional(” Bluesona“),userId:Optional(”“),msg:Optional(”“),creatAt:Optional(0),纬度:Optional(”“),经度: Optional(“”)),MainApp.Message(名称:Optional(“ Oliver”),userId:Optional(“”),msg:Optional(“”),creatAt:Optional(0),纬度:Optional(“”) ,经度:Optional(“”))]]
我希望简单地输出一个包含名称为["Oliver", "Bluesona"...]
的字符串数组的数组
您可以使用compactMap
获取数组中的所有有效名称。
print( driverArr.compactMap({$0.name}) )
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.