Swift 语言之基础学习笔记
常量和变量
用let来声明常量,用var来声明变量:
1 | let maximumNumberOfLoginAttempts = 10 |
类型标注:
1 | var welcomeMessage: String = "Hello" |
输出常量和变量:
1 | var friendlyWelcome = "Hello!" |
注释
单行注释:
1 | // this is a comment |
多行注释(可以嵌套):
1 | /* this is the start of the first multiline comment |
分号
同一行内写多条独立语句:
1 | let cat = "🐱"; println(cat) |
整数
整数范围:
1 | let minValue = UInt8.min // minValue is equal to 0, and is of type UInt8 |
浮点数
略
类型安全和类型推断
整数推断
1 | let meaningOfLife = 42 |
浮点数推断:
1 | let anotherPi = 3 + 0.14159 |
数值字面量
整数字面量(十进制数没有前缀,二进制数前缀是0b,八进制数前缀是0o,十六进制数前缀是0x):
1 | let decimalInteger = 17 |
浮点字面量(十进制数没有前缀,指数通过e或E指定,十六进制通过p或P指定):
1 | let decimalDouble = 12.1875 |
数值字面量增强可读性写法:
1 | let paddedDouble = 000123.456 |
数值类型转换
整数转换:
1 | let twoThousand: UInt16 = 2_000 |
整数与浮点数转换:
1 | let three = 3 |
类型别名
类型别名就是给现有类型定义另外一个名字:
1 | typealias AudioSample = UInt16 |
布尔值
1 | let orangesAreOrange = true |
元组
元组就是把多个值组合成一个复合值:
1 | let http404Error = (404, "Not Found") |
如果只需要一部分元组值,分解的时候可以把要忽略的部分用下划线(_)标记:
1 | let (justTheStatusCode, _) = http404Error |
还可以通过下标来访问元组中的单个元素,下标从零开始:
1 | println("The status code is \(http404Error.0)") |
可以在定义元组的时候给单个元素命名:
1 | let http200Status = (statusCode: 200, description: "OK") |
可选
可以给可选变量赋值为nil来表示它没有值:
1 | var serverResponseCode: Int? = 404 |
if语句强制解析:
1 | let possibleNumber = "123" |
可选绑定:
1 | if let actualNumber = possibleNumber.toInt() { |
隐式解析可选类型:
1 | let possibleString: String? = "An optional string." |
断言
使用断言调试:
1 | let age = -3 |