加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

swift基本语法

发布时间:2020-12-14 02:38:47 所属栏目:百科 来源:网络整理
导读:import UIKit/*1.只有 .swift文件 所有的声明和实现都在同一个文件 并且相关的代码都需要写在 {}内2.快捷键: option + click swift最常用的快捷键 没有之一 查看对象的描述信息3.print 和 OC中的NSLog一样 打印*/class ViewController: UIViewController { o
import UIKit

/*
1.只有 .swift文件  所有的声明和实现都在同一个文件 并且相关的代码都需要写在 {}内
2.快捷键: option + click   swift最常用的快捷键  没有之一  查看对象的描述信息
3.print 和 OC中的NSLog一样 打印

*/

class ViewController: UIViewController {

    override func viewDidLoad() {
        super.viewDidLoad()
        //调用函数
        demo7()
    }
    
    //switch  在swift中变得更加强大方便
    //早日毕业 出任高级攻城狮 迎娶白富美  走向人生巅峰
    //需要不断学习
    
    /*
        
    1. 可以不写break
    2.每个case内至少有一条可以执行的语句
    3.定义变量 不需要加 {}  限定作用域
    4.可以同时case多个条件
    5.判断的条件 不再局限整数类型  可以是任意类型
    */
    func demo7() {
        let money = "20000"
        switch money {
        case "18000","20000" :
            let str = "hahahah"
            print("高级攻城狮")
            print(str)
        case "12000":
            print("程序猿")
        case "8000":
            print("码农")
        default:
            print("打酱油")
        }
    }
    
    //3. ?? 快速判断是否为空  并且设置为空的默认值
    func demo6() {
        //声明一个可选类型
        var num: Int? = 10
        let a = num ?? -1
        print(a)
    }
    
    
    //guard let  守卫  作用: 能够防止代码结构层次嵌套太深
    func demo5() {
        let urlString = "http://www.douniwan.com?type="
        guard let url = NSURL(string: urlString) else {
            //为空才会进入分支
            return
        }
        
        //守卫后面的 一定是必选类型的数据
        print(url)
    }
    
    
    //分支结构的实际运用
    //1. if let
    // 赋值 并且判断是否为空  不为空才会进入分支
    func demo4() {
        //模拟发出一个网络请求 
        let urlString = "http://www.douniwan.com?type="
        //convenience init?  便利构造函数  有可能生产一个url出来   有可能就难产了
//        let url = NSURL(string: urlString)
//        
//        //实例化request
//        if url != nil {
//            let request = NSURLRequest(URL: url!)
//            print(request)
//        }
        if let url = NSURL(string: urlString) {
            let request = NSURLRequest(URL: url)
            print(request)
        }
        
    }
    
    
    // 分支结构
    func demo3() {
        //推荐使用的分支结构
        /*
        1.条件 的 ()  可以省略
        2.{}  一定不能省略   2014 年 一个让苹果很没面子的安全漏洞
        */
        let i = 10
        if i > 0 {
            print("大于0")
        } else{
            print("小于0")
        }
    }
    
    //注意: 可选项是所有OC程序员转到Swift最头疼的问题  
    //建议: 根据Xcode智能提示 添加 ! 或者 ?
    // 每次使用 ? 和 ! 都思考一下 熟练了就知道如何使用 
    
    //
    //可选类型
    func demo2() {
        //表示num 就是可选类型  可以为 Int数值  也可以为 nil
        //可选类型在打印的时候会自动加上 optional 表示可选类型
        
        // ? : 有吗
        // ! : 有!!!!
        // ! 惊叹号表示强制解包   没有的话就怒了  崩溃  fatal error: unexpectedly found nil while unwrapping an Optional value  swift最常遇到的错误 没有之一
        var num: Int?
        
        //直接强制解包有风险 要谨慎
        if (num != nil) {
           print(num!)
        }
        
        if num != nil {
            print(num)
        }
        
    }

}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读