swift 可選型別語法

2021-07-27 08:46:19 字數 805 閱讀 1730

import uikit

//swift中有規定:物件中的任何屬性在建立物件時,都必須有明確的初始化值

//有時候我們想把建立的物件賦值為nil,但是swift是強型別語言,nil也是一種型別,所以不能把建立的物件初始化為nil,但是有時候我們給新建的物件賦值nil又在所難免,這時候就出現了:可選型別

//可選型別和字串、陣列、字典等一樣也是一種資料型別

//1:定義可選型別

方式一:常規方式(不常用)

var name : optional= nil

語法糖(常用) 在指定型別後面加問號

var age : int? = nil

//2:給可選型別賦值

name = "zhengyanfeng"

age = 18

//3:取出可選型別的值

強制解包 寫法:(可選型別 !) 可選型別後面加上感嘆號稱作強制解包,可以取出可選型別的值,但是如果可選型別初始化為nil之後沒有被賦值,使用這種方法(強制解包)取值會引起崩潰,建議在強制解包前對可選型別進行判斷,如果不為nil再進行強制解包

print(name!)

if name != nil

可選繫結 可選繫結做兩步操作 第一步:判斷name是否有值,如果沒有值,直接不執行{} 第二步:如果name有值,系統會自動將name進行解包,並且將解包後的結果,賦值給前邊的臨時變數

.1寫法一:不常用

if let tempname = name

.2寫法二:常用

if let name = name

Swift語法10 可選型別

概念 可選型別的取值 錯誤寫法 let string string nil 正確寫法 注意 name的型別是乙個可選型別,但是該可選型別中可以存放字串.寫法一 定義可選型別 let name optional nil 寫法二 定義可選型別,語法糖 常用 let name string?nil 演練一...

Swift 可選型別

swift 可選型別 optionals 可選型別 強制解析 自動解析 可選繫結 1.可選型別 加入我們建立乙個變數,但是它有可能為空,這時候swift提供乙個符號 來表示這是乙個可能為空的變數 var thisstr string?看到這裡的if,沒錯,if或者for迴圈後面的內容不加 加了也沒錯...

Swift 可選型別

在 swift 中,可選型別用來處理值可能缺失的情況,表示下面兩種情況 在 swift 中宣告變數時,使用?或 來表示宣告的變數是可選型別。let name string?var age int 此時,變數name和age預設都是nil,表示空。而?和 的區別在於使用前者宣告的變數所包含的值時,需要...