Я изо всех сил пытаюсь понять поведение следующего кода:
let a: Any? = nil
let b: AnyObject? = a as AnyObject
if let c: AnyObject = b {
print(c)
print("That's not right, is it?")
} else {
print("I'd expect this to be printed")
}
При запуске на детской площадке, хотя значение равно нулю, выполняется первое закрытие и выводится следующее:
Это не правильно, правда?
Q: Как это возможно и ожидается ли это поведение?