Arrays 无法为类型为';[ClassName.StructName]';索引类型为';ClassName.StructName';

Arrays 无法为类型为';[ClassName.StructName]';索引类型为';ClassName.StructName';,arrays,swift,struct,Arrays,Swift,Struct,我遇到了这个问题,还没有找到任何解决办法 结构 struct hourSlot{ lazy var timeWorkingString = "\(startTimeStructString) - \(endTimeStructString)" var startTimeStructString = "null" var endTimeStructString:String = "null" (Some logic here) }

我遇到了这个问题,还没有找到任何解决办法

结构

struct hourSlot{
        lazy var timeWorkingString = "\(startTimeStructString) -  \(endTimeStructString)"
        var startTimeStructString = "null"
        var endTimeStructString:String = "null"
        (Some logic here)
}
这里的问题是:

无法将“[WorkTimeModifier.hourSlot]”类型的值下标为 “WorkTimeModifier.hourSlot”类型的索引


提前感谢

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

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


您正在处理快速枚举循环,这意味着
index
当前对象本身不是索引。
for item in hoursArray {
    let timeFinal = item.timeWorkingString
}
for (index,item) in hoursArray.enumerated() {
    let timeFinal = hoursArray[index].timeWorkingString
}