Scala基礎學習

weixin_33866037發表於2019-01-31
13947662-1872492b62e800cc.png


13947662-6fb80c215cfcafb9.png


13947662-071315f4ddf4cb4a.png

scala函數語言程式設計思想


13947662-20b675f28f53ca8b.png


13947662-9c269c378ebc38e9.png


13947662-47e6766c281efc5c.png


13947662-e42ae9ab3dbaf591.png


13947662-880fa6ec86b063fe.png


13947662-ffefe6930ab6f0e9.png


13947662-cfaa139084a3290c.png


13947662-47fef55d45462256.png
13947662-e34ca69668700af6.png
13947662-19914dcbc553de34.png
13947662-423e66e33a96c330.png
13947662-789b091c6bcd496b.png
13947662-f62204bf17777f98.png
13947662-c601e9eb20f3bbed.png
13947662-6ab1fe99c1bcbf5f.png
13947662-38d7344538063881.png
13947662-51b8233fe71200d6.png


13947662-3d79ead42ef0be92.png
檢查本地jdk版本和scala版本
13947662-0caf65558d67a824.png
專門為scala量身定製的編譯工具
13947662-977cce2083e03ef2.png
13947662-1ffd9795e1c8e8cf.png
互動式的程式碼實驗工具類似於java的main方法

如何開啟REPL介面?

直接在cmd中輸入scala即可


13947662-4300862d481031e1.png

sbt能啟動REPL介面嗎?

當然可以,在cmd中輸入sbt console即可

如果是簡單的程式碼段驗證用REPL是很方便的,如果是複雜的程式,那麼我們就需要使用IDE來做我麼的程式碼管理了。下面就是幾款比較常用的IDE工具。

13947662-9c5338f532065669.png
13947662-9bcd73e7f7c0cc6f.png
13947662-0c9e8df50147a8f4.png
13947662-66b402901d78b3bb.png
可以指定變數型別也可以不指定


13947662-c97a8621e813518a.png
13947662-33c3d49a2af5660b.png
13947662-51b678611473a342.png
13947662-e7d2465186b5f96e.png
13947662-8fa90d392f574d7e.png
13947662-36177c09f1f073ff.png
13947662-07445cf94f3b29f4.png
13947662-d213a2cdc194e6f3.png
13947662-5962569e3d4eee13.png
13947662-83ea248398c71e62.png
13947662-2aeaf6d48efd4222.png
13947662-1d87fb28b2ef234b.png

使用idea編寫scala

第一步:安裝scala外掛

第二步:指定scala的sdk


13947662-3e99bf13a39eaf7e.png
13947662-2746a2a83ae27ebd.png
13947662-eedb584db3a013e9.png
13947662-795e3c99a2a3f645.png
13947662-09791b7ad312de2d.png
13947662-d792057d862bf46e.png
13947662-852e644b12cea7ed.png
13947662-41974a6ad0f66ee2.png
try跟java的try塊相同,但是會返回結果
13947662-30d7d11def8bde13.png
13947662-0ed3528243704399.png
13947662-752f99724c591e7a.png
13947662-83aa5738296d7691.png
13947662-e25c09c6e2a021c7.png
call by name比call by value多執行一步
13947662-a7124f3e3b2457fc.png
13947662-2cffb713e0edd71e.png
13947662-c25307bd1bb76c05.png
13947662-8b88f7399efa8172.png
scala語言中函式是第一等公民
13947662-263983ec2b8f8072.png
13947662-de8a11ef90c134e9.png
13947662-849eb1b4981a8b90.png
13947662-b85bb96a7db8df34.png
13947662-37970d7b5f3bd8d1.png
13947662-a94d42cd79b11c55.png
13947662-f51ecb445d9d478c.png
13947662-50c70625bb0b1b25.png
13947662-e76762112f61d8e4.png
13947662-7129324d44786ac4.png
13947662-314f0de34686d7a4.png
13947662-c6ec4c7bb527eb3b.png
13947662-0d74eafe300f0145.png
13947662-20077f3e65b80c61.png
13947662-c388f121c48676a7.png
13947662-3e7044c7638affaf.png
13947662-c4c9c24fd39290e1.png

Scala集合

13947662-9b872d9246bdb338.png

Scala序列


13947662-626c8d7b611e79fe.png

Scala Map類


13947662-845f7f23096fa71e.png

Scala Set類


13947662-52010bc26a3d7834.png

List的使用


13947662-5358d8ccb38bde93.png
13947662-758eb8798d6ff7f4.png
13947662-a1539b645674c276.png
13947662-797fef1e406daa6c.png
13947662-2ef12fdf27b78e58.png