Scala中Stream的應用場景及其實現原理
假設一個場景
需要在50個隨機數中找到前兩個可以被3整除的數字。
聽起來很簡單,我們可以這樣來寫:
1 2 3 4 5 6 7 8 9 |
|
一個產生50個隨機數的函式;
一個檢查某數字是否能被3整除的函式;
最後,對含有50個隨機數的List做filter操作,找到其中所有能夠被3整除的數字,取其中前兩個。
把這段程式碼在Scala的console裡面跑一下,結果是這樣的:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 |
|