[英]Arrays for Swift2
我有兩個單獨的.swift文件。 我想使用ManagePerson.swift來管理我的Strings
例如添加和檢索。 另一個ViewController.swift創建一個ManagePerson類的數組來訪問數據。
在我的ManagePerson.swift中
func addPerson(name: String, code: String, description: String){
self.name = name
self.code = code
self.description = description
}
在我的ViewController.swift中。
var personList = [PersonTable]() // Declared at class level
for jsonObjectString in resultArray! {
let name = jsonObjectString["Name"] as! String
let code = jsonObjectString["Code"] as! String
let description = jsonObjectString["Description"] as! String
self.personList[count].addPerson(Name, code: code, description: description)
count++
}
但是,我似乎無法執行.addPerson
方法。 我收到一個錯誤“線程:6:EXC_BAD_INSTRUCTION(代碼= EXC_I386_INVOP,子代碼= 0x0)”
首先,讓我們假設您使用以下三個屬性定義了“人”類: (b)設置這些屬性的init
方法:
class Person {
let name: String
let code: String
let description: String
init(name: String, code: String, description: String) {
self.name = name
self.code = code
self.description = description
}
}
然后,實例化一個Person
,只是
let person = Person(name: "Joe Montana", code: "16", description: "Quarterback")
如果需要這些Person
對象的數組,則將其定義為:
var personList = [Person]()
因此,要將Person
添加到此數組,它是:
personList.append(Person(name: "Joe Montana", code: "16", description: "Quarterback"))
因此,如果resultArray
是字典數組,則添加如下項:
for dictionary in resultArray! {
let name = dictionary["Name"] as! String
let code = dictionary["Code"] as! String
let description = dictionary["Description"] as! String
personList.append(Person(name: name, code: code, description: description))
}
但是請注意,我們不必弄亂count
(因為您可以將其添加到數組中)。
或者,如果這些值可以為nil
,則可以將它們定義為可選值:
class Person {
let name: String?
let code: String?
let description: String?
init(name: String?, code: String?, description: String?) {
self.name = name
self.code = code
self.description = description
}
}
和
for dictionary in resultArray! {
let name = dictionary["Name"] as? String
let code = dictionary["Code"] as? String
let description = dictionary["Description"] as? String
personList.append(Person(name: name, code: code, description: description))
}
這是因為self.personList[count]
為nil
它不包含任何PersonTable
實例
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.