Open1

enumerated / compactMap

ほすほす
  • enumerated() で値とインデックスのタプルを取り出す
  • compactMap()nilを除外する
  • この例では、とりあえずCGPointにして返しているので、item -> CGPointとしている
let data: [CGFloat] = [1, 2.0, 3.2, 10]

let points = data.enumerated().compactMap { item -> CGPoint in
    print("offset = \(item.offset), element = \(item.element)")
    return CGPoint(x: item.element, y: CGFloat(item.offset))
}

print(points)