1、语句末尾的分号可有可无,类似python和JavaScript。
print("hello world!")
2、let定义常量,var定义变量
let aConstant = 1
var aVar: String
aVar = "abc"
3、下划线
1)忽略区间值
for _ in 0...4 { }
4、范围操作符
1)闭合操作符
for _ in 0...4 { }
2)半开操作符
for _ in 0..<5 { }
5、结构体是值类型
struct STR {
var a: Int = 1
}
var s1 = STR()
var s2 = s1
s2.a = 2
print("struct value copy \(s1.a), \(s2.a)") 输出:
struct value copy 1, 2
6、类是引用类型
class CLS {
var a: Int = 1
}
var c1 = CLS()
var c2 = c1
c2.a = 2
print("class reference copy \(c1.a), \(c2.a)") 输出:
class reference copy 2, 2
7、函数
8、提前退出
9、Swift既是面向对象,又是函数式编程语言。
1)支持类的封装、继承和多态。
2)支持map、reduce、filter和flatmap这些数学函数。
10、访问权限
11、final
12、defer
13、泛型
C++中也有泛型的概念。泛型可以让函数和类型变得更加灵活,重用率更高。
func swapTwoValues<T>(_ a: inout T, _ b: inout T) {
let temporaryA = a
a = b
b = temporaryA
}
14、闭包
15、枚举
16、集合(Collection)类型
1)三种集合类型:数组(Array),集合(Set),字典(Dictionary)。