rx在c语言中,RxSwift - 入门
目錄:
RxSwift 是什么?
RxSwift是Reactive下的一個分支,Reactive涵蓋了很多語言。
Reactive是什么意思?
響應(yīng)式編程,何謂響應(yīng)式編程?
別急,先看一段簡單的代碼:
var a = 1
let b = 2
let c = a + b
print(c)
a = 4
print(c)
從上面的代碼可以看出來,盡管在輸出c之后,a改變了,但是結(jié)果仍讓不會改變。
所謂的響應(yīng)式就是當(dāng)a或者b發(fā)生改變之后,c的值也隨之改變。
如何實(shí)現(xiàn)上述需求?
class Num {
var a: Int {
didSet {
c = a + b
}
}
var b: Int {
didSet {
c = a + b
}
}
var c: Int = 0
init(a: Int, b: Int) {
self.a = a
self.b = b
self.c = a + b
}
}
let n = Num(a: 1, b: 2)
print(n.c)
n.a = 4
print(n.c)
版面 1.png
1、新建對象,同時初始化a、b、c的值
2、打印c的值
3、重新設(shè)置a的值,因?yàn)楸O(jiān)聽了a的值,所以c的值被重新賦值了
4、打印c的值
接下來我們在看看另外一個需求,過濾一個數(shù)組的中的奇數(shù).
let numbers = [1,2,3,4,5,6,7,8,9]
print(numbers.filter { $0 % 2 == 0 })
版面 2.png
1、創(chuàng)建一個不可變的數(shù)組
2、使用filter過濾掉其中的奇數(shù)
看完了上面兩個示例,我們分析分析
當(dāng)我們站在時間的維度上面來看,那么不管是第一個中的init或者是第二個的初始化數(shù)組,都是一個"常量",因?yàn)橐坏﹫?zhí)行了,就"不可變"了。
在RxSwift的世界里面這個東西就叫做Observable,其中還有一張類似的圖
legend.png
現(xiàn)在,我們知道了什么是響應(yīng)式編程,知道了RxSwift中最重要的概念(以時間為索引的常量隊(duì)列),之后就要了解一下Observable的operators。
總結(jié)
以上是生活随笔為你收集整理的rx在c语言中,RxSwift - 入门的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 短时能量法代码c语言,[蓝桥杯][算法提
- 下一篇: 计算机二级c语言109套,2016年9月