关于可选值与可选值绑定的问题

来源:2-5 Swift-可选型 Optionals

qq_风轻云淡_1

2015-03-31 11:14

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!


写回答 关注

3回答

  • 发条橙
    2015-03-31 11:32:59
    已采纳

    sss 的类型是String?

    ddd的类型也是String?但是在if语句中 if var ddd = inputContent.toInt()已经相当于把他变成了String类型了

    你可以回去在仔细看下optional的那节课 有详细说明

    发条橙 回复qq_风轻云...

    差不多可以这么理解

    2015-03-31 11:44:29

    共 2 条回复 >

  • qq_风轻云淡_1
    2015-04-03 14:23:16

    恩恩,好的

  • qq_风轻云淡_1
    2015-03-31 11:40:25

    也就是说直接放在if后面赋值就是把可选值binding了么???

玩儿转Swift

这套教程比任何的Swift中文教程深入,并且演示示例更丰富

57181 学习 · 511 问题

查看课程

相似问题