// 可选类型
// 可选类型: 这个值要么存在等于X,要么这个值根本就不存在
var serverResponseCode : Int? = 404 // ?的意思是这个只存在为404,要么这个值就不存在为nil
let possbileNumber = "123"
// let coverNumber: Int? = possbileNumber.toInt()
var responseCode: Int? = 404 // 要么存在为404
responseCode = nil // 要么不存在为nil
// 可选类型类似于Objective-C中的指针nil的值,但是nil只对类(Class)有用,指对象不存在,而Swift中的nil不是指针,它代表特定类型的值不存在。任何类型的可选类的值都能赋值为nil,而不仅限于对象类型。
/*
1.Swift里面的nil,不能用于非可选类型
2.如果代码中的变量或常量需要适配值不存在的情况,务必将它声明为恰当的可选类型
3.如果定义的可选类型不提供默认值,默认为nil
*/
var strValue: String? = "hello"
let hasValue = strValue?.hashValue // 问号的意思是询问可选量是否响应后面的这个方法
print("hasValue is (hasValue)")
/*总结 ?的使用场景
1.声明为Optional变量
2.声明为Optional变量,是否响应后面的这个方法
*/