小编典典

如何在同一个for循环中遍历三个单独的数组?

swift

我要尝试运行三个数组,我想在一个函数中使用所有三个数组的值。这听起来可能令人困惑,但这是我所拥有的:

    var Name = [Joe, Sarah, Chad]
    var Age = [18, 20, 22]
    var Gender = [Male, Female, Male]

    for name in Name {
        for age in Age {
            for gender in Gender {   
                makeUser(name, userAge: age, userGender: gender)
            }
        }
    }

这会运行,但是我得到的是:(makeUser打印出3个值)

Joe, 18, Male
Joe, 20, Male
Joe, 22, Male

Joe, 18, Female
Joe, 20, Female
Joe, 22, Female ....

等等。

我想要的就是

Joe, 18, Male
Sarah, 20, Female
Chad, 22, Male

这可能吗?任何帮助表示赞赏。

谢谢!


阅读 745

收藏
2020-07-07

共1个答案

小编典典

如果您始终确定数组的长度相等,那么最好循环遍历其中一个数组,并使用其索引来引用其他数组:

for (index, name) in enumerate(Name) {
    makeUser(name, userAge: Age[index], userGender: Gender[index])
}

但是,我建议将这些数据放入字典中,但我认为这只是示例数据,用于说明一个观点。:)

2020-07-07