###前提・実現したいこと
Playgroundで、配列から値を取り出し新しい配列を作る処理を行っています。
取り出す元の配列は[[Any]]で、中身の配列の個数は1800個、その1配列につき7つのDoubleと1つのStringが入っています。
新しく作る配列は[[Double]]になります。
###発生している問題
Runしてから1時間ほど経ちますが、まだ処理が終わりません。
###質問したいこと
初心者で恐縮なのですが、このくらいのサイズの配列の処理にはこのくらい時間がかかるものなのでしょうか?(高級言語で一般的に/Swiftの場合)
また、こういう大きなサイズの配列の処理をしたい場合に、適切な方法はありますでしょうか?
###ソースコード
Swift
1let array1:[[Any]] = [[12345.0, 1234.5678901234, 1234.5678901234, 12345.0, 1.2, 12345.0, 0.12345678901234, "ここだけString(ここは特に利用しない)"],...]//[]×1800個 2 3var array2 = [[Double]]() 4 5for i in 0...(array1.count - 3){ 6 let a = array1[i][3] as? Double 7 let b = array1[i][4] as? Double 8 let c = array1[i][5] as? Double 9 let d = array1[i][6] as? Double 10 let e = array1[i][0] as? Double 11 let f = array1[i + 1][0] as? Double 12 let g = array1[i + 2][0] as? Double 13 14 if let a = a,let b = b,let c = c,let d = d,let e = e,let f = f,let g = g{ 15 let hoge = a + b + c + d 16 array2.append([hoge,e,f,g]) 17 } 18} 19 20print(array2)
###補足情報(言語/FW/ツール等のバージョンなど)
Swift3, Xcode8.3.3
MacBook Pro Mid2015 ( 2.8GHz Intel Core i7(4 cores), メモリ:16GB)
回答1件
あなたの回答
tips
プレビュー