[Swift][Error] Cannot assign value of type ‘[AnyObject]’ to type *

・エラーメッセージ
Cannot assign value of type ‘[AnyObject]’ to type *

・エラー例

var x:[Int]
var y:[AnyObject] = [1,2,3]
x = y
// => Cannot assign value of type ‘[AnyObject]’ to type ‘[Int]’

・原因
上記の場合、AnyObject型のコレクション(配列や辞書)をInt型のコレクションに格納しようとしたため

・対策
代入前に as! を使ってダウンキャストを行う

var x:[Int]
var y:[AnyObject] = [1,2,3]
x = y as! [Int]

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です