美文网首页
swift第一讲

swift第一讲

作者: 奇怪的知识增加了 | 来源:发表于2020-04-09 20:51 被阅读0次

    swift系列课程

    编译流程

    Swift code --> Swift AST -->Raw Swift IL -->Canonical Swift IL-->LLVM IR -->Assembly-->Executable

    关于常量
    • 只能赋值一次
    • 它的值不要求编译时期确定,但使用之前必须赋值1次
    var num = 10
    num += 20
    let age = num
    print(age)
    
    
    func getAge() -> Int {
        return 10
    }
    let theAge = getAge()
    print(theAge)
    
    关于标识符
    • 标识符(比如常量名,函数名,变量名)几乎可以使用任何字符
    func 🐂🌞() {
        print("666")
    }
    🐂🌞()
    
    
    let 👽 = 124
    var 👀 = 888
    
    
    • 标识符不能以数字开头 不能包含空白字符,制表符,箭头等特殊字符
    值类型(value type) 枚举 optional
    值类型(value type) 结构体 bool ,int ,float,double,character,string,array,dictionary,set
    引用类型(reference type)
    • 整数类型:Int8,Int16,Int32,Int64 Uint8,Uint16,Uint32,64Uint
    • 在32bit平台 int等价于Int32 ;64bit int等价于int64
    • 整数的最值 UInt8.max,Int16.min
    • 一般情况下,都是直接使用Int即可
    • float 32 精度只有6位 ;double 64位 精度至少15位
    //默认是double
    let letFloat:Float = 30.0
    let letDouble = 30.0
    
    //布尔
    let bool = true //false
    //字符串
    let string = "小马哥"
    //字符(可存储ASCII字符,Unicode字符)
    let character:Character = "🐶"
    //整数
    let intDecimal = 17 //十进制
    let intBinary = 0b10001 //二进制
    let intOctal = 0o21 //八进制
    let intHexadecimal = 0x11//十六进制
    //浮点型
    let doubleDecimal = 125.0 //十进制,等价于1.25e2 = 1.25*10^2
    let doubleDecimal = 0.0125 //1.25e-2 = 1.25*10^-2
    let doubleHexadecimale12 = 0xFp2//十六进制,意味着15*2^2 
    let doubleHexadecimal2 = 0xFp-2 //十六进制,15*2^-2
    //数组
    let array = [1,2,3,3]
    //字典
    let dic = ["age":18]
    
    
    • 整数和浮点数可以添加额外的零或者添加下划线来增强可读性
    100_0000
    0001243.456
    1_000_000_000.909090
    //整数转换(两个不同类型的数据相互运算要转换成同样的类型)
    let int1:UInt16 = 2_000
    let int2:Uint8 = 1
    let int3 = int1 + UInt16(int2)
    
    //整数,浮点型转换
    let int = 3
    let double = 0.2323
    let pi = Double(int) + double
    let intPi = Int(pi)//强转double到int
    //字面量可以直接相加,因为数字字面量本身没有明确的类型
    let result = 3 + 0.236728378
    
    
    //元祖
    let error = (404,"not found")
    let (sta1,sta2) = error//把元祖赋值给元祖
    print(sta1)
    let (sta1,_)=error//只赋值第一个元素,下划线表示忽略
    let abc = (statusCode:200,msg:"成功")
    print(abc.statusCode)
    

    相关文章

      网友评论

          本文标题:swift第一讲

          本文链接:https://www.haomeiwen.com/subject/pwwcmhtx.html