Swift语言使用var定义变量,但和别的语言不同,Swift里不会自动给变量赋初始值,也就是说变量不会有默认值,所以要求使用变量之前必须要对其初始化。如果在使用变量之前不进行初始化就会报错:
var stringValue : String //error: variable 'stringValue' used before being initialized //let hashValue = stringValue.hashValue // ^ let hashValue = stringValue.hashValue
Optional其实是个枚举,里面有None
和Some
两种类型。
声明为Optional只需要在类型后面紧跟一个?
即可。如:
然后怎么使用Optional值呢?问号的意思是询问是否响应后面这个方法,如果是nil值,固然不能响应后面的方法,所以就会跳过,如果有值,可能就会拆包(unwrap),然后对拆包后的值执行后面的操作
另外,对于Optional值,不能直接进行操作,否则会报错
!
表示“我确定这里的的strValue一定是非nil的,调用吧