因此。我试图用Swift中的struct创建一个人,我想知道如何使用我的struct的实例创建一个数组。
有人能告诉我怎么做吗?
struct Person{
var name: String
var boyOrGirl: Bool
init(names: String, bOg: Bool){
self.name = names
self.boyOrGirl = bOg
}
}
var personArray: Person = [["Heine",true], ["Magnus",true]]
答案 0 :(得分:4)
Person
的实例创建为:
Person(names: "Heine", bOg: true)
您的代码中有2个错误:
var personArray: Person = [["Heine",true], ["Magnus",true]]
^^^^^^ ^^^^^^^^^^^^^^
personArray
应该是一个数组,而您将其声明为Person
正确的语法是:
var personArray: [Person] = [Person(names: "Heine", bOg: true), Person(names: "Magnus",bOg: true)]
请注意,可以省略变量类型[Person]
,因为编译器可以从分配给personArray
变量的值推断出类型:
var personArray = [Person(names: "Heine", bOg: true), Person(names: "Magnus",bOg: true)]
答案 1 :(得分:1)
您将使用:
var personArray: [Person] = [Person(name:"Heine",bOg:true), Person(name:"Magnus",bOg:true)]
或者,因为可以推断出数组类型,甚至:
var personArray = [Person(name:"Heine",bOg:true), Person(name:"Magnus",bOg:true)]