Почему я получаю быстрый бросок Dynamic Cast?

Эта строка кода, кажется, вызывает проблему

{
gymnastTables.gymnastsArray = defualts.objectForKey("Gymnasts") as Array
}

Почему я получаю сообщение об ошибке?

2 ответа

Решение

objectForKey имеет тип возврата: AnyObject? поэтому это может быть nil

Вы можете сначала развернуть его, as AnyObject! и после опускания до Array

gymnastTables.gymnastsArray = 
        defualts.objectForKey("Gymnasts") as AnyObject! as Array<AnyObject>

Вы не упомянули Array типа так я добавил AnyObject это всегда будет правдой

В Swift вы должны указать, какой тип Array содержит, либо как Array<Gymnast> или же [Gymnast],

Другие вопросы по тегам