在每次宣告的變數或常數,swift 都只能儲存單一型別的資料
而 swift 提供了兩種特別的型別
Any 能夠表示為任何型別:
而 AnyObject 可表示為任何 class 型別:
但使用 Any 或是 AnyObject 來宣告常數或變數又會有個問題:特定型別的常數或變數不接受它們。
在上圖例子中,Any 型別可以接受 Int 這個型別,但如果是 Int 型別就只能存 Int,無法接受可能有其他型別的 Any。
透過 as! 來強制轉型為我們指定的型別,這時就不再報錯
使用 as! 需確認能夠轉換成功,如果這裡轉換失敗會報錯,因此可利用 as? 在轉換時失敗時提供給我們一個 nil。