關于可選值與可選值綁定的問題
let inputContent = "78"?
var sss = inputContent.toInt()
if sss != nil
{
? ? println("轉變成int型\(sss)");//println("轉變成int型\(sss!)") ??
? ? println("輸出sss" + String(sss!)) ? ? ? ? ?A // ?這一句與B處我沒有明白判斷句有什么大的差別,但是這里不加“!”會報錯,而B處的加了“!”號就會報錯。。。這是什么原因我不懂,請大家解析一下
}else
{
? ? println("沒有轉變成int型")
}
//optional binding
if var ddd = inputContent.toInt()
{
? ? println("輸出ddd" + String(ddd)) ? ? ? ? ? B
}
let instr:String? = "dfksjf"
instr
instr!
2015-03-31
sss 的類型是String?
ddd的類型也是String?但是在if語句中?if var ddd = inputContent.toInt()已經相當于把他變成了String類型了
你可以回去在仔細看下optional的那節課 有詳細說明
2015-04-03
恩恩,好的
2015-03-31
也就是說直接放在if后面賦值就是把可選值binding了么???