Fork me on GitHub

以撸代码的形式学习Swift-2:基础运算符(Basic Operators)

1 赋值运算符(Assignment Operator)

赋值操作并不返回任何值

1
2
3
let b = 10
var c = 5
let (x, y) = (2, 5)

2 算术运算符(Arithmetic Operators)

1
2
3
4
5
6
7
8
9
10
11
12
1 + 2
5 - 3
2 * 3
10.0 / 2.5
"hello, " + "world"
// 溢出运算(如 a &+ b )
// 求余运算符(Remainder Operator)
// a % b a = (b × 倍数) + 余数 倍数是整数,可以是负数
9 % 4 // 1 9 = 4*2 + 1
-9 % 4 // -1 -9 = 4*-2 + (-1)
// 自增和自减运算 (最新版的swift已经去掉)
// 一元负号运算符/一元正号运算符

3 复合赋值(Compound Assignment Operators)

复合赋值运算没有返回值

1
2
var a = 1
a += 2

4 比较运算符(Comparsion Operators)

1
2
3
4
5
6
7
8
9
10
11
12
13
1 == 1
1 <= 2
2 >= 1
1 < 1
1 > 2
class A {

}
var obja = A()
var objb = A()
var objc = obja
obja === objb // false 恒等 === 和不恒等 !== 只用来两个对象是否引用同一个对象实例
obja !== objc // false

5 三目运算符(Ternary Conditional Operator)

1
true ? "true" : "false"

6 空合运算符(Nil Coalescing Operator)

1
2
3
var e: String?
var f = "我是fuck"
e ?? f // `e != nil ? e! : f` , 可选类型`e`不是`nil`时,就`e!`,否则为`f`。(注意`??`前后要空格)

7 区间运算符(Range Operators)

1
2
3
4
5
6
for index in 1...5 {
print("\(index) * 5 = \(index * 5)")
}
for index in 1..<5 {
print("\(index) * 5 = \(index * 5)")
}

8 逻辑运算(Logical Operators) 操作对象是逻辑布尔值

1
2
3
4
5
var mybool = false
var youbool = true
!mybool
mybool && youbool
mybool || youbool

playground文件在andyRon/LearnSwift

坚持原创技术分享,您的支持将鼓励我继续创作!
  • 本文标题: 以撸代码的形式学习Swift-2:基础运算符(Basic Operators)
  • 本文作者: AndyRon
  • 发布时间: 2017年07月03日 - 13:39
  • 最后更新: 2018年10月15日 - 18:33
  • 本文链接: http://andyron.com/2017/swift-2-basic-operators.html
  • 版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 3.0 许可协议。转载请注明出处!