?與!的區別?
用?修飾變量的時候,變量未初始化時是為nil
用!修飾變量的時候,變量未初始化時也是nil
現在所理解的區別在于,用?修飾的變量不能直接強制轉型、會被標識為Optional變量等
那實際上使用上的區別在哪呢?有人能舉個例子嗎?
因為我現在覺得一直用!強制拆包了也沒什么不便的感覺,就是要考慮nil的情況而已。(就相當在初期化給予一個初始值)
用?修飾變量的時候,變量未初始化時是為nil
用!修飾變量的時候,變量未初始化時也是nil
現在所理解的區別在于,用?修飾的變量不能直接強制轉型、會被標識為Optional變量等
那實際上使用上的區別在哪呢?有人能舉個例子嗎?
因為我現在覺得一直用!強制拆包了也沒什么不便的感覺,就是要考慮nil的情況而已。(就相當在初期化給予一個初始值)
2015-06-17
舉報
2015-12-14
例如當一個方法的返回值可能為空的時候, 就可以用到?了