I have a custom class like:
class Tender: NSObject {
public var code = ""
public var name = ""
}
A method returns an array of Tender type. From this array, I want to prepare an array that contains only name. Example,
public func fetchTenderArray() -> [Tender] {
var tenderArray = [Tender]()
let tender1 = Tender()
tender1.code = "t1"
tender1.name = "tenderName1"
let tender2 = Tender()
tender2.code = "t2"
tender2.name = "tenderName2"
tenderArray.append(tender1)
tenderArray.append(tender2)
return tenderArray
}
Now, I have a method that uses this tenderArray. I need to form an array with the names of [Tender].
public func formTenderNamesArray() -> [String] {
let tenderArray = fetchTenderArray()
var tenderNames = [String]()
for tender in tenderArray {
tenderNames.append(tender.name)
}
return tenderNames // returns ["tenderName1","tenderName2"]
}
Is there a short and a best way to prepare that array of strings using swift3?