• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

Swift常量、变量、条件判断

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

- 常量用 let ,变量用 var

- // Optional为可选项,// 可用类型值 + ? 代替

        let x: Optional = 10
        let y: Int? = 5
        print(x! + y!)

- 三木运算符

        // 三目运算符
        x > 5 ? print("大了") : print("小了")
        // 可以这样写 `()`,如果不判断的话
        x > 5 ? print("大了") : ()
        /**
         ?? 是一个简单的 三目运算
         - 如果有值,使用值
         - 如果没有值,使用 ?? 后面的值替代
         ?? 优先级最低
        */
        print((x ?? 0) + (y ?? 0))

- if let / var 连用语法,目的就是判断值

        let oName:String? = ""
        let oAge:Int? = 10
        
        if oName != nil && oAge != nil {
            print(oName! + String(oAge!) + "")
        }
        
        // if let 连用,判断对象的值是否为 nil, {} 内一定有值,可以直接使用,不需要解包
        // if var 连用, {} 可以对值进行修改!
        if var name = oName,
            let age = oAge {
            name = ""
            
            // 进入分支之后, name 和 age 一定有值,不需要解包
            // name 和 age 的作用域仅在 {} 中
            print(name + String(age) + "")
        } else {
            print("name 或 age 为 nil")
        }

 

- guard  守卫 / 守护  // guard let 和 if let 刚好相反

  这样可以使可选项去掉

        let oName: String? = ""
        let oAge: Int? = 10
        
        // guard let 守护一定有值,如果没有直接返回
        guard let name = oName,
            let age = oAge else {
            print("年龄或者姓名为 nil")
                return
        }
        
        // 代码执行至此,name 和 age 一定有值
        // 通常判断是否有值之后,会做具体的逻辑实现,通常代码多
        // 如果用 if let 凭空多了一层分支,guard 是降低分支层次的方法
        // guard 的语法是 Swift 2.0 推出的!
        print(name + String(age) + "")    

 

- swtich case
     1. swtich 可以针对任意类型的值进行分支,不再局限在整数
     2. switch 一般不需要break
     3. switch 如果要多值,使用 `,`
     4. 所有的分支至少需要一条指令,如果什么都不干,才使用break

    func test9(num: String) {
        switch num {
        case "10", "9":
            print("")
        case "8":
            break
        default:
            print("一般")
        }
    }

- for循环

        // [0, 5)
        for i in 0..<5 {
            print(i)
        }
        
        print("------")
        
        // [0, 5]
        for i in 0...5 {
            print(i)
        }

 


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap