常量和变量
let firstName = "Tom"
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
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的空值检测机制,可以很好的保护程序不会因为空值导致意外退出。