基础语法

  • 不用编写main函数,Swift将全局范围内的首句可执行代码作为程序入口
  • 一句代码尾部可以省略分号( ; ),多句代码写到同一行时必须用分号(;)隔开
  • var 定义变量, let 定义常量,编译器能自动推断出变量\常量的类型

注释

1
2
3
4
5
6
7
8
9
// 单行注释
/*
多行注释
*/
/*
1
/* 多行注释的嵌套 */
2
*/

常量

  • 只能赋值1次
  • 它的值不要求在编译时期确定,但使用之前必须赋值1次
  • 常量、变量在初始化之前都不能使用

标识符

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

let 🦊 = "Fox"
var 🐵 = "Monkey"

常见数据类型

  1. 值类型
  • 枚举 enum
    optional
  • 结构体 struct
    Bool, Int, Float, Double, Character
    String, Array, Dictionary, Set
  1. 引用类型
  • 类 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位

类型转换

1
2
3
4
5
6
7
8
9
10
11
12
13
// 整数转换
let int1: UInt16 = 2_000
let int2: UInt8 = 1
let int3 = int1 + UInt16(int2)

// 整数、浮点数转换
let int = 3
let double = 0.314
let pi = Double(int) + double
let intPi = Int(pi)

// 字面量可以直接相加 ,因为数字字面量本身没有明确的类型
let result = 3 + 0.14159

元组

1
2
3
4
5
6
7
8
9
10
let http404Error = (404, "Not Found")
print("The status code is \(http404Error.0)")

let (statusCode, statusMessage) = http404Error
print("The status code is \(statusCode)")

let (justTheStatusCode, _) = http404Error

let http200Status = (statusCode: 200, description: "OK")
print("The status code is \(http200Status.statusCode)")

参考

  • 李明杰老师课件