我遇到这个问题,还没有找到解决办法。
结构

struct hourSlot{
        lazy var timeWorkingString = "\(startTimeStructString) -  \(endTimeStructString)"
        var startTimeStructString = "null"
        var endTimeStructString:String = "null"
        (Some logic here)
}

这里的问题是:
不能用
“worktimemodifier.hourSlot”类型的索引
var hoursArray = [hourSlot]()
func updateTable(){
        for index in hoursArray{
            let timeFinal:String = hoursArray[index].timeWorkingString
        }
}


提前谢谢

最佳答案

当您在这里下标数组而不是索引时,需要使用Int类型它是hourSlot类型

for item in hoursArray {
    let timeFinal = item.timeWorkingString
}

或者
for (index,item) in hoursArray.enumerated() {
    let timeFinal = hoursArray[index].timeWorkingString
}

关于arrays - 无法用索引“ClassName.StructName”下标“[ClassName.StructName]”的值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/55782051/

10-16 14:07