Optional Chaining
上图ErrorMessage后面的?的意思是尝试解包,如果解包成功就执行后面的uppercased()方法,如果解包不成功停止执行,上图是解包成功的例子,下图是解包不成功的例子
ErrorMessage 后面也可以跟!号,意思是程序员确保ErrorMessage可以解包,不然会直接崩溃
解包失败
解包成功
nil Coalesce
var errorMessage:String? = "Not Found";var message = errorMessage ?? "No Error"var message2 = errorMessage == nil ? "No Error" : errorMessage!上面获取message1和message2的方法等效
新闻热点
疑难解答