如何通过点表示法访问非实例化对象? (斯威夫特游乐场)

时间:2017-06-27 01:43:46

标签: swift swift-playground

我对下面提供的代码swift plyground中使用的coordinate.column和coordinate.row感到困惑。当我没有实例化实例坐标时,列和行是如何进行的?如果for循环不兼容坐标,当allcoordinates或world.allPossibleCoordinates不是一个类型时,它是如何实例化的? (世界各地没有任何辅助工具。所有可能的协调......)

let allCoordinates = world.allPossibleCoordinates
var blockSet: [Coordinate] = []

//#-editable-code Tap to enter code
for coordinate in allCoordinates {
    // Check for coordinates with a column > 5 OR a row < 4.
    if coordinate.column > 2 && coordinate.row < 5 {
        // Append coordinate to blockSet.

    }
}

1 个答案:

答案 0 :(得分:0)

Swift中,for in循环的工作方式与其他语言中的for循环略有不同。 for in循环跨越一个范围(我假设所有坐标都是大步的)。在提供的示例中,如果变量allCoordinates是一个跨度范围,则循环将遍历该范围中的每个项目,每次迭代将每个值分配给coordinate。有关更多信息,请查看Apple's Documentation