Swift 使用for循环创建20个不同的对象

Swift 使用for循环创建20个不同的对象,swift,object,for-loop,Swift,Object,For Loop,我已经为团队创建了一个类,并希望使用for循环创建该类的20个对象 理想情况下,循环应该将团队创建为列表“Team0”、“Team1”、“Team2”。。。等等 代码不会尝试将团队添加到数组中,也不会尝试设置每个团队的num属性 你需要这样的东西: var teams = [Team]() for i in 1...20 { let team = Team() team.num = "\(i)" teams.append(team) } 注意变量应该如何以小写字母开头

我已经为
团队
创建了一个类,并希望使用for循环创建该类的20个对象

理想情况下,循环应该将团队创建为列表“Team0”、“Team1”、“Team2”。。。等等


代码不会尝试将团队添加到数组中,也不会尝试设置每个团队的
num
属性

你需要这样的东西:

var teams = [Team]()
for i in 1...20 {
    let team = Team()
    team.num = "\(i)"
    teams.append(team) 
}
注意变量应该如何以小写字母开头

请注意您的数组类型是如何错误的。它需要是
团队的数组
,而不是
字符串的数组

请注意您的变量声明
Team[i]
是如何无效的

您可能还希望将一个
init
方法添加到您的
团队
类中,该类接受一个数字:

init(_ num: Int) {
    self.num = "\(num)"
}
然后在循环中,您可以替换:

    let team = Team()
    team.num = "\(i)"
只要:

    let team = Team(i)
给定

你可以写

let teams = (0..<20).map(Team.init)

将团队设置为字符串数组。。。它必须是一个团队数组,var团队:[Team]=[Team]()
class Team{
    let num:Int

    init(num:Int) {
        self.num = num
    }
}
let teams = (0..<20).map(Team.init)
teams[0].num // 0
teams[1].num // 1
teams[2].num // 2