如何只访问数组中CGPoints的Y坐标?

时间:2016-08-02 23:23:13

标签: arrays macos swift2 cgpoint

我有一个包含20个CGPoints的数组。如何只访问数组中每个CGPoint的Y坐标?

3 个答案:

答案 0 :(得分:2)

var arrayOfPoints : [CGPoint] = [.....]//your array of points

for point in arrayOfPoints {
   let y = point.y
   //You now have just the y coordinate of each point in the array.
}

或者如果您使用.enumerate()语法。

for (index, point) in arrayOfPoints.enumerate() {
   let y = point.y
   //You now have just the y coordinate of each point in the array.

   print(point.y) //Prints y coordinate of each point.
}

Swift使常见for循环操作变得简单。例如, 如果你想要一个所有y坐标的数组,那么你可以在swift中使用漂亮的一个衬垫。

let arrayOfYCoordinates : [CGFloat] = arrayOfPoints.map { $0.y }

或者传入以将每个y coordiante传递给相同的函数。

arrayOfPoints.map { myFunction($0.y) }

答案 1 :(得分:1)

你去吧

let arrayOfPoints : [CGPoint] = [CGPoint(x: 1, y: 2), CGPoint(x: 3, y: 4)]

let yCoordinates = arrayOfPoints.map { $0.y }

for y in yCoordinates {
    print("y = \(y)") //Or whatever you want to do with the y coordinates
}

答案 2 :(得分:0)

为什么赢得point.y工作的简单foreach循环?