저는 스위프트의 속도 문제로 주로 배열을 사용하여 싸우고있었습니다. 현재 최신 '베타 4'출시. 문제를 시도하고 보여주기 위해 코드를 놀이터로 분해했습니다.스위프트 (베타 4)의 2D 어레이 반복 속도
2D 배열을 설정하고, 반복하고, 각 요소를 설정합니다.
import UIKit
func getCurrentMillitime() -> NSTimeInterval {
let date: NSDate = NSDate()
return date.timeIntervalSince1970*1000;
}
let startTime = getCurrentMillitime()
let X = 40
let Y = 50
var distanceGrid = [[CGFloat]](count: X, repeatedValue:[CGFloat](count: Y,repeatedValue:CGFloat(0.0)))
for xi in 0..<X {
for yi in 0..<Y {
distanceGrid[xi][yi] = 1.1
//println("x:\(xi) y:\(yi) d:\(distanceGrid[xi][yi])")
}
}
let endTime = getCurrentMillitime()
let computationTime = endTime - startTime
println("Time to compute \(computationTime) ms")
은 위의 코드를 실행하고 당신은 얻을 것이다 :
Time to compute 2370.203125 ms
확실히 어떤 잘 될 수 없습니다 .. 나는 numpty 건가요!?
'numpty'라는 단어를 사용하려면 +1하십시오 (하지만 반드시 그렇지는 않습니다)! – GoZoner
그 이상한 ... _beta4_ 상당히 빠른 런타임 있어요 : _ "72.72509765625 ms 계산할 시간"_. 그 코드는 내 컴퓨터에서 약 30 배 더 빠르게 보입니다 ... – holex