Swift基础数据类型

常量和变量

  • 使用关键字let来声明常量
let firstName = "Tom"
  • 使用关键字var来声明变量
var lastName = "Jerry"
  • 能够在行中声明多个变量或常量,且用逗号分割
var x = 0.0, y = 0.0, z = 0.0
  • Swift是类型安全的语言。若是没有初始值,就必须标注出变量的类型。
// 添加方法:在变量或常量的名字后面加一个冒号,跟一个空格,再加上使用的类型名字
var welcomeMessage: String
  • 变量和常量的名字几乎可使用任何字符,甚至包括Unicode字符。(注:命名不能包括 空白字符数学符号箭头保留的Unicode码位连线或制表符不能以数字开头
let π = 3.14159
let 你好 = “你好世界”
let 🐶🐂 = "dogcow"

基本数据类型

整数

  • Swift提供来8,16,32和64位编码的有符号和无符号整数
  • 命名方式:例如8位无符号整数是UInt8,32位有符号整数是Int32
  • 经过min和max属性来访问每一个整数类型的最小值和最大值
  • 建议在用到整数的地方都使用Int
print(Int8.max)
print(Int8.min)
//输出 127\n -128\n

浮点类型

  • Double: 64位浮点数,至少有15位数字的精度
  • Float: 32位浮点数,至少有6位数字的精度
  • 在两种类型均可以的状况下,推荐使用Double类型
    下图展现来整数和浮点数数值范围
    数值范围

Bool

  • true和false
  • Swift的类型安全机制会阻止你用非Bool变量替换Bool

Tuple(元组)

  • 元组把多个值合并单一的复合型的值
  • 元组内的值能够是任何类型,并且能够没必要是同一类型
let student = (1234,"李明磊")
    print(student.0)
    print(student.1)
    //输出 1234\n  李明磊\n
  • 元组中的每一个元素能够指定对应的元素名称
  • 没有指定名称的元素能够经过下表访问
let student = (studentID: 1234, studentName: "李明磊")
    print(student.studentID)
    print(student.studentName)
    //输出 1234\n 李明磊\n
  • 用var定于的元组就是可变元组,let就是不可变元组
  • 无论是可变元组仍是不可变元组,元组建立后就不能够增长或删除元素
  • 能够对可变元组的元素进行修改,可是不能改变其类型
  • any类型能够改成任何类型
//错误示范
    var error = (errorCode: 1,errorMessage: "没有权限")
    error.errorCode = "2"   //提示报错,不能改变元组中元素的类型
    error.errorCode = 2     //能够修改
  • 能够将元组的内容分解成单独的常量或变量
  • 若是只须要一部分数据,不用的数据可用 _ 代替
let error = (1, "没有权限")
    let (errorCode, errorMessage) = error 
    let (_, errorMes) = error

Optional

  • 意义: 这个变量可能有值, 也可能没有值
  • 经过在变量类型后面加?
var str: String? = nil
  • 经过if语句拆包
var str: String? = "abc"
    if str != nil {
        print(str)
    }
    //输出 abc
  • 经过!强制拆包
//若str有值 打印, 反之报错或**退出程序**
    var str: string? = "abc"
    print(str!)
    // 输出 abc
  • 将包含的值赋值给一个临时变量
var str: String? = "abc"
    if let string = str {
        print(string)
    }
    //同一个 if 语句中包含多可选项绑定,用逗号分隔便可。若是任一可选绑定结果是 nil 或者布尔 值为 false ,那么整个 if 判断会被看做 false
  • Option类型做为Swift的空值检测机制,能够很好的保护程序不会由于空值致使意外退出。