2017-10-14 8 views
0

コンソールから1行の文字スペースで区切られた整数行を2D配列に読み込もうとしています。私はsplit(separator:maxSplits:omittingEmptySubsequences:)を使ってみましたが、整数にキャストすることはできません。Swift IOSの2Dアレイの入力としてコンソールから行を読み取る

入力としてコンソールから読み出されなければならない2次元アレイは、この

1 1 1 0 0 0 
0 1 0 0 0 0 
1 1 1 0 0 0 
0 0 2 4 4 0 
0 0 0 2 0 0 
0 0 1 2 4 0 

ように見えるこれは私が

var arr = [[Int]]() 
for i in 0 ... 5 { 
    var a = readLine()?.components(separatedBy: " ") 
    var arr[i] = [a?.split(separator: " ", maxSplits: 1, omittingEmptySubsequences: false)] as? Int 

} 

を試み、エラーが

cast from '[ArraySlice]?' to unrelated type 'Int' always fails 

答えて

1

あるコードでありますこれを試してください

for i in 0...5 { 
    arr += readLine()!.components(separatedBy: " ").map{ Int($0)! } 
} 
0
for i in 0...5 {  
    var aux = [Int]() 

    readLine()?.split(separator: " ").map({ 
    aux.append(Int($0)!) 
    }) 
    arr.append(aux) 
} 
関連する問題