2016-10-04 4 views
0

그래프 좌표 x와 y로 배열을 채우려고합니다.스위프트의 2D 배열

let chartPoints1 = [(1, 1), (2, 2), (3, 3), (4, 4)].map{ChartPoint(x: ChartAxisValueInt($0.0, labelSettings: labelSettings), y: ChartAxisValueInt($0.1))} 

을 그러나, 나는 그 배열을 통해이 같은 반복하여 다른 배열의 좌표를 추가 할 : 지금이 순간이 내가 가진 무엇

let tasks = DatabaseManager.getTasks("Tasks") 
let count: Int! = tasks?.count 
for i in 1...count { 
    chartPoints1.append(i, tasks[i].date) 
} 

을하지만 난 수없는 것 chartPoints1의 배열의 종류와지도 함수의 작동 방식을 정확히 알아낼 수 있습니다.

답변

2

2 차원 배열이 없습니다. 당신은 먼저 ChartPoint의 배열에 맵핑되는 튜플의 배열을 가지고 있습니다.

[[1, 1], [2, 2], [3, 3]] 

의 각 요소 : 그래서, 당신의 APPEND에, 난 당신이 더 명확히하기 위해

chartPoints1.append(ChartPoint(...)) 

처럼 뭔가를 찾고 있다고 생각, 2 차원 배열처럼 보일 수 있습니다 배열의 배열이며, 배열은 튜플입니다. 따라서 map을 호출하면 $0이 현재 튜플을 나타냅니다 (예 : (1, 1)). 튜플 구문을 사용하면 튜플의 첫 번째 항목을 $0.0, 두 번째 것은 $0.1 등으로 가져올 수 있습니다. 이를 염두에두고 각 요소에 ChartPoint을 어떻게 구성하는지 볼 수 있어야하므로 새 배열의 유형은 [ChartPoint]입니다.