Swift

Swift:配列にsaveするケース

文字列や配列を配列の中にsaveするときに注意するべきことをサンプルコードでまとめました。

var wtable:NSMutableArray = [ [ “zzzzzz”, [], [8, 9], [“aaaaaa”] ], [ “b”, [], [54, 31], [] ]]

var wany:AnyObject = “”

wany = wtable[0][0]
println(“\(wNo++) 配列の直下に入れた文字列の場合 wtable[0][0]=\(wany)”)

wany = wtable[0][3][0]
println(“\(wNo++) 配列の中の配列に文字列を入れた場合 wtable[0][3][0]=\(wany)”)

wany = [1,2,3,4]
wtable[0]  = [ “zzzzzz”, [wany], [8, 9], [“aaaaaa”]]
println(“\(wNo++) 配列の中の配列に配列を入れた場合 wtable[0][1][0]=\(wtable[0][1][0])”)

実行すると次のようになります。

1 配列の直下に入れた文字列の場合 wtable[0][0]=zzzzzz
2 配列の中の配列に文字列を入れた場合 wtable[0][3][0]=aaaaaa
3 配列の中の配列に配列を入れた場合 wtable[0][1][0]=(
1,
2,
3,
4
)

このことから言えそうなことは、配列に入れないと入力データがバラけるかもしれないと心配したのが敗因・複雑さを作っていそうだというです。単純にsaveしてそのまま素直に取り出すべきでした。

便利な点は、多分、配列の個数でその配列にデータがsaveされているかどうか判断できることです。逆に言うなら、配列の個数が0でないとき、[0]の配列を取り出す必要があります。

Categories: Swift, 技術