Scala第一章練習題
1. Scala直譯器讀到一個表示式,對它進行求值,將它打印出來,接著再繼續讀取下一個表示式。這個過程被稱做“讀取-求值-列印-迴圈”,即REPL。
練習題
1.在Scala REPL中鍵入3,然後按TAB鍵。有哪些方法可與被應用?
我是輸入了“3.”按TAB鍵才有以下輸出
2. 在scala REPL中,計算3的平方根,然後再對該值求平方,現在,這個結果與3相差多少?(提示:res變數是你的朋友)
先要import scala.math._(下劃線表示萬用字元)
3. res變數是val還是var?
我認為是val
4. Scala允許你用數字去乘字串----去REPL中試一下“crazy”*3,這個操作做什麼?在Scaladoc中如何找到這個操作
重複crazy 3次
直接在Scaladoc中搜索string唄
5.10 max 2的含義是什麼?max方法定義在哪個類中?
RichInt類中(為什麼直接搜尋max查不到,不好用)
6.用BigInt計算2的1024次方
7.為了在使用probablePrime(100, Random)獲取隨機素數時不在probablePrime和Radom之前使用任何限定符,你需要引入什麼?
import
scala.util._
import scala.math.BigInt._
網上搜索來的,不知道為什麼!!!
8. 建立隨機檔案的方式之一是生成一個隨機的BigInt,然後把它轉換成三十六進位制,輸出類似"qsnveffwfweq434ojjlk"這樣的字串,查閱scaladoc,找到在scala中實現該邏輯的辦法。
9.在Scala中如何獲取字串的首字元和尾字元?
10. take, drop, takeRight, dropRight這些字串函式是做什麼用的?和substring相比,它們的優點和缺點都有哪些?
(1)在StringLike中
take:Selects first n elements.(選擇開頭的n個字元)
takeRight :Selects last n elements.(選擇末尾的n個字元)
(2)StringOps
drop :Selects all elements except first n ones. (選擇除了開頭的n個字元)
dropRight:Selects all elements except last n ones. (選擇除了末尾的n個字元)
(3)StringBuilder
substring: 選擇子串,這個要構造一個新的字串