Ios 使用数组中的名称初始化多个对象

Ios 使用数组中的名称初始化多个对象,ios,swift,Ios,Swift,我试图以一种优雅的方式创建一个结构的多个实例 我有一个名称为的数组: let instanceNames = ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday"] 以及与之配套的结构: struct days { var date = "" var description = "" var otherValue = "" } 我想要的结果是: var Monday = days() var Tuesday = days() var

我试图以一种优雅的方式创建一个结构的多个实例

我有一个名称为的数组:

let instanceNames = ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday"]
以及与之配套的结构:

struct days {
var date = ""
var description = ""
var otherValue = ""
}
我想要的结果是:

var Monday = days()
var Tuesday = days()
var Wednesday = days()
var Thursday = days()
var Friday = days()

有没有一种方法可以在一行中实现这一点,我尝试了这个,但当然没有成功:

for day in instanceNames {
var day = days()
}


任何帮助都将不胜感激

不,没有办法以这种方式分配给许多局部变量,最好是使用字典:

var d = Dictionary<String, days>()
for day in instanceNames {
    d[day] = days()
}
var d=Dictionary()
在instanceNames中的一天{
d[天]=天()
}

然后,您可以使用类似于
d[“Monday”]

的表达式来解决这些问题。不,没有办法以这种方式分配给许多局部变量,您最好使用字典来实现这一点:

var d = Dictionary<String, days>()
for day in instanceNames {
    d[day] = days()
}
var d=Dictionary()
在instanceNames中的一天{
d[天]=天()
}

然后,您可以使用类似于
d[“Monday”]

的表达式来解决这些问题。不,没有办法以这种方式分配给许多局部变量,您最好使用字典来实现这一点:

var d = Dictionary<String, days>()
for day in instanceNames {
    d[day] = days()
}
var d=Dictionary()
在instanceNames中的一天{
d[天]=天()
}

然后,您可以使用类似于
d[“Monday”]

的表达式来解决这些问题。不,没有办法以这种方式分配给许多局部变量,您最好使用字典来实现这一点:

var d = Dictionary<String, days>()
for day in instanceNames {
    d[day] = days()
}
var d=Dictionary()
在instanceNames中的一天{
d[天]=天()
}

然后您可以使用类似于
d[“Monday”]

的表达式来解决这些问题。您不能将实例分配给
day
值<代码>日期在您的案例中是一个字符串。 如果要每天创建实例,可以执行以下操作:

struct Day {
    var date = ""
    var description = ""
    var otherValue = ""
}

var days : Day[] = []
for _ in instanceNames {
    var day = Day()
    days.append(day)
}

您不能将实例分配给
值<代码>日期在您的案例中是一个字符串。 如果要每天创建实例,可以执行以下操作:

struct Day {
    var date = ""
    var description = ""
    var otherValue = ""
}

var days : Day[] = []
for _ in instanceNames {
    var day = Day()
    days.append(day)
}

您不能将实例分配给
值<代码>日期在您的案例中是一个字符串。 如果要每天创建实例,可以执行以下操作:

struct Day {
    var date = ""
    var description = ""
    var otherValue = ""
}

var days : Day[] = []
for _ in instanceNames {
    var day = Day()
    days.append(day)
}

您不能将实例分配给
值<代码>日期在您的案例中是一个字符串。 如果要每天创建实例,可以执行以下操作:

struct Day {
    var date = ""
    var description = ""
    var otherValue = ""
}

var days : Day[] = []
for _ in instanceNames {
    var day = Day()
    days.append(day)
}

试试下面的方法,它可能对你有用

let instanceNames = ["Monday", "Tuesday"]

struct days {
    var date: String
    var description: String
    var otherValue: String
}

for day in instanceNames{
    var day1 = days(date: day, description: "great", otherValue:"Awesome");
    println(day1.date)
}

试试下面的方法,它可能对你有用

let instanceNames = ["Monday", "Tuesday"]

struct days {
    var date: String
    var description: String
    var otherValue: String
}

for day in instanceNames{
    var day1 = days(date: day, description: "great", otherValue:"Awesome");
    println(day1.date)
}

试试下面的方法,它可能对你有用

let instanceNames = ["Monday", "Tuesday"]

struct days {
    var date: String
    var description: String
    var otherValue: String
}

for day in instanceNames{
    var day1 = days(date: day, description: "great", otherValue:"Awesome");
    println(day1.date)
}

试试下面的方法,它可能对你有用

let instanceNames = ["Monday", "Tuesday"]

struct days {
    var date: String
    var description: String
    var otherValue: String
}

for day in instanceNames{
    var day1 = days(date: day, description: "great", otherValue:"Awesome");
    println(day1.date)
}
我最终做了这样的事:

struct week {
var monday = day()
var tuesday = day()
var wednesday = day()
..
}

现在,我只需一行代码就可以初始化所有这些天:

currentWeek = week()
并创建一周中所有天的对象。然后我可以通过

currentWeek.monday
比如说

谢谢你的帮助

我最后做了这样一件事:

struct week {
var monday = day()
var tuesday = day()
var wednesday = day()
..
}

现在,我只需一行代码就可以初始化所有这些天:

currentWeek = week()
并创建一周中所有天的对象。然后我可以通过

currentWeek.monday
比如说

谢谢你的帮助

我最后做了这样一件事:

struct week {
var monday = day()
var tuesday = day()
var wednesday = day()
..
}

现在,我只需一行代码就可以初始化所有这些天:

currentWeek = week()
并创建一周中所有天的对象。然后我可以通过

currentWeek.monday
比如说

谢谢你的帮助

我最后做了这样一件事:

struct week {
var monday = day()
var tuesday = day()
var wednesday = day()
..
}

现在,我只需一行代码就可以初始化所有这些天:

currentWeek = week()
并创建一周中所有天的对象。然后我可以通过

currentWeek.monday
比如说


谢谢你的帮助

谢谢,有点遗憾的是,没有真正简单的方法来做这件事,但它会起作用。谢谢,有点遗憾的是,没有真正简单的方法来做这件事,但它会起作用。谢谢,有点遗憾的是,没有真正简单的方法来做这件事,但它会起作用。