美文网首页
[Swift]常量、标识符、字面量、类型转换、元组

[Swift]常量、标识符、字面量、类型转换、元组

作者: 欧皇ff | 来源:发表于2020-04-26 09:34 被阅读0次

    常量

    1.只能赋值1次

    //1.
    let age = 10
    //2.
    let age: Int
    age = 10
    
    //错误方式
    let age
    age = 10
    
    let age = 10
    age = 20
    
    错误示范1

    2.它的值不要求在编译时期确定,但使用前必须赋值1次

    //1
    var num = 10
    num ++
    num += 20
    let age = num
    //2
    func getAge() -> Int {
      return 10
    }
    let age = getAge()
    
    

    3.常量和变量在初始化之前,都不能使用

    //错误示范
    let age: Int
    let height: Int
    print(age, height)
    
    
    
    错误示范2

    标识符

    (比如常量名、变量名、函数名)几乎可以使用任何字符
    func 🐂🍺(){
        print(6666)
    }
    🐂🍺()
    
    标识符函数
    标识符不能以数字开头,不能包含空白字符、制表符、箭头等特殊字符

    常见数据类型

    值类型(value type) 枚举(enum) Optional
    结构体(struct) Bool、Int、Float、Double、Character
    String、Array、Dictionary、Set
    引用类型(reference type) 类(class)
    技巧
    • 整数类型:Int8,Int16, Int32, Int64, UInt8, UInt16, UInt32, UInt64

    • 在32bit平台,Int等价于Int32,64bit平台,Int等价于Int64

    • 整数的最值:UInt8.max,Int16.min

    • 一般情况下,都是直接使用Int。(除非大量数据运算或者对数据大小有严格要求需要指定大小)

    • 浮点类型:Float 32位,精度只有6位;Double, 64位, 精度至少15位。

    //定义Float 必须声明
    let floatV: Float = 10.0
    //默认Double类型
    let doubleV = 10.0
    

    字面量

    // 布尔
    let boolV = true // false
    //字符串
    let stringV = "欧皇"
    //字符 (可存储ASKII字符、Unicode字符)
    let characterV: Character = "🐅" //必须声明Character类型,字符 和 字符串都用 "" 表示,默认为字符串
    // 整数
    let intDecimal = 18 //十进制
    let intBinary = 0b1001 //二进制
    let intOctal = 0o21 //八进制
    let intHexadecimal = 0x11 //十六进制
    // 浮点
    let doubleDecimal = 125.0 //1.25e2
    //
    let doubleHexadecimal1 = 0xFp2 // 15 * 2^2
    //整数和浮点数可以添加额外的零或者添加下划线来增强可读性
    let int100万 = 100_0000
    let int12345 = 000123.456
    //数组
    let array = [1, 2, 3, 4, 5]
    //字典
    let dictionary = ["age":18,"height":168,"weight":200]
    

    类型转换

    //整数转换
    let int1: UInt16 = 2_000
    let int2: UInt8 = 1
    let int3 = int1 + UInt16(int2) //往高位转换
    //整数、浮点数转换
    let int = 3
    let double = 0.14159
    let pi = Double(int) + double
    let intPi = Int(pi)
    //字面量可以直接相加,因为数字字面量本身没有明确的类型
    let result = 3 + 0.14159
    
    错误示范

    元组(tuple)

    //元组
    let error = (404, "Not Found")
    error.0
    error.1
    let (statusCode, statusMessage) = error
    print("The status code is \(statusCode)")
    let (justTheStatusCode, _) = error
    
    let http200Status = (statusCode: 200, description: "OK")
    print("The status code is \(http200Status.statusCode)")
    

    相关文章

      网友评论

          本文标题:[Swift]常量、标识符、字面量、类型转换、元组

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