Swift 基本数据类型

1、整型

  • Swift 提供了 IntUInt 两种整数类型,分别表示有符号和无符号的整数类型。另外 IntUInt 后面可以带有 8、16、32 和 64,以表示 8、16、32、64 位的整数。

    • 有符号整型 Int、Int8、Int16、Int32、Int64
    • 无符号整形 UInt、UInt8、UInt16、UInt32、UInt64
  • Swift 中 IntUInt 都是可以自适应平台的类型,其类型的字长始终和当前平台的原生字长相同,即 32 位系统下声明获得的是 32 位的整型,64 位系统下获得的是 64 位的整型。

  • 整数类型有 maxmin 属性,分别表示不同整数类型的最大值和最小值。

    • 最大值

      // 127
      Int8.max 或 INT8_MAX
    • 最小值

      // -128
      Int8.min 或 INT8_MIN
  • 整型的声明

    • 隐式声明机制

      // 自动调用构造函数
      let intNum = Int()                   // 默认初始值为 0
      let intNum = 18                      // 设置初始值为 18,自动推断为 Int 型
      let intNum: Int = 18                 // 设置初始值为 18
    • 显式声明机制

      // 显式的调用初始化构造器
      let intNum = Int.init()              // 默认初始值为 0
      let intNum = Int.init(18)            // 设置初始值为 18  
  • 其他方法或属性

    // 计算两个数字之间的距离(两数之差),结果 3
    intNum.distance(to: 21)
    
    // 访问变量或常量的字符串版本,结果 “18”
    intNum.description
    
    。。。。。

2、浮点型

  • Swift 为我们提供了两种有符号浮点数类型 FloatDouble

    • Float 是 32 位浮点数类型。
    • Double 是 64 位浮点数类型。
  • 当使用类型推断声明一个浮点型变量或者常量时,变量或常量总是默认被推断为类 Double 型。

  • 浮点型的声明

    • 隐式声明机制

      // 自动调用构造函数,定义 Float 型
      let floatNum = Float()               // 默认初始值为 0
      let floatNum: Float = 2.1            // 设置初始值为 2.1
      
      // 自动调用构造函数,定义 Double 型
      let doubleNum = Double()             // 默认初始值为 0
      let doubleNum = 2.2                  // 设置初始值为 2.2,自动推断为 Double 型
      let doubleNum: Double = 2.2          // 设置初始值为 2.2
    • 显式声明机制

      // 显式的调用初始化构造器,定义 Float 型
      let floatNum = Float.init()          // 默认初始值为 0
      let floatNum = Float.init(2.1)       // 设置初始值为 2.1
      
      // 显式的调用初始化构造器,定义 Double 型
      let doubleNum = Double.init()        // 默认初始值为 0
      let doubleNum = Double.init(2.2)     // 设置初始值为 2.2

3、布尔型

  • Swift 提供了一个非真即假的逻辑类型 “布尔型”。

    • 布尔型只有两种值 truefalse
    • Swift 语言中不能直接使用 0 或者非 0 来表示逻辑真假。
    • 可以直接在布尔变量前加 !,来达到布尔值取反的作用。
  • 布尔型的声明

    • 隐式声明机制

      // 自动调用构造函数
      let boolNum = Bool()                 // 默认初始值为 false
      let boolNum = true                   // 设置初始值为 true
      let boolNum: Bool = true             // 设置初始值为 true
    • 显式声明机制

      // 显式的调用初始化构造器
      let boolNum = Bool.init()            // 默认初始值为 false
      let boolNum = Bool.init(true)        // 设置初始值为 true

4、元组类型

  • 可以通过使用元组,把多个不同类型的值组合在一起,组成一个复合值。

    • 元组中的成员类型可以是相同的,也可以是不同的。
    • 元组中的成员可以直接当作常量或变量使用。
    • 元组的声明中也可以使用类型推断。
    • 元组可以用作函数返回值,它可以使函数能一次返回更多的信息。
  • 元组的声明

    • 标准声明

      // 定义时指定元组名称、成员名称并且初始化
      let stu = (name: "xiaoming", age: 18)
      
      // 定义时指定元组名称并且初始化,不指定成员名
      let stu = ("xiaoming", 18)
      
      // 定义时指明元素类型
      let stu: (String, Int) = ("xiaoming", 18)
    • 匿名声明

      // 声明一个匿名的元组
      let (name, age) = ("xiaoming", 18)  
  • 元组中元素的访问

    • 标准声明的元组

      // 使用元素名访问
      let stuName = stu.name
      
      // 使用元素在元组中的顺序下标访问
      let stuName = stu.0
    • 匿名声明的元组

      // 使用元素名访问
      let stuName = name
  • 如果想要获取元组中的某些重要部分加以利用,忽略一些不重要的信息时,可以把元组的值传递到一个新的元组中。在新元组中声明那些接受重要值的值成员,而不重要的部分使用下划线 _ 表示忽略。

    let (name, _) = stu
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值