Мне просто интересно...
let movie = item as? Movie
В этом примере item
имеет тип Movie
или что-то еще. В случае последнего Movie
будет присвоено значение nil. Таким образом, Movie
будет иметь тип Movie?
.
Теперь рассмотрим следующий пример:
let movie: Movie?
movie = item as? Movie
Скажем, Movie
- это переменная класса, которую я присваиваю некоторое значение внутри одного из моих методов класса.
Мне кажется, что as? Movie
несколько избыточно, поскольку Movie
уже известен как тип Movie?
.
Есть ли какой-либо синтаксис в Swift, который гласит: "Включение этого объекта в тот же тип, что и объект, к которому я его назначаю. Назначьте nil, если это необязательный тип, а downcast терпит неудачу."
Я надеялся на что-то вроде:
movie = item as?
или
movie =? movie