三目运算、可选类型

来源:互联网 发布:conoha绑定域名 编辑:程序博客网 时间:2024/05/14 14:34
//: Playground - noun: a place where people can playimport UIKitlet num = 10if num == 5{    print("5")}else{    print("10")}/* 在OC中,if else 可以使用三目运算符来简写 注意:在做Swift开发中三目运算符用得频率非常高 */let res = (num == 5) ? 5 : 10print(res)/*    可选类型:代表可以有也可以没有 Optional *//* convenience init?(string URLString: String) 但凡看到一个方法或者数据类型后面有?,就代表返回的是一个可选类型 使用可选类型需要注意,如果直接打印可选类型,那么打印出来的值会被Optional()包裹 初学者看到? 要谈定一点,因为从OC转入Swift之后,最让蛋疼的就是?、!、?? */let url = NSURL(string: "http:/www.baidu.com")print(url) //"Optional(http:/www.baidu.com)\n"print(url!) //"http:/www.baidu.com\n"// ! 代表告诉编译器,可选类型一定有值,强制解析// 如果可选类型中没有值,而又进行了强制解析,那么程序会崩溃// Swift的用意就是让我们将大部分的运行时的错误,都编译时解决if url != nil{  let request = NSURLRequest(URL: url!) //这里的必须使用!强制解析,因为NSURLRequest不接受可选类型}/*    可选绑定 */// 这里会将url中的值取出来赋值给urlFinal变量,如果值不为nil,那么就可以进入{}if let  urlFinal = url{    let request = NSURLRequest(URL: urlFinal)}
0 0