本節都是比較簡單的介紹,更具體的內容會在後面的視頻中具體講解。
函數定義
下面以main函數來說明函數的一般定義:
object HelloScala {
def main(args: Array[String]) : Unit = {
println("Hello Scala!")
}
}
- 函數定義關鍵字:def
- 函數名稱:main
- 參數名稱:args
- 函數體:括號中的println(“Hello Scala!”)
- 返回內容,若無則爲Unit,如果無返回值,可刪除“:Unit = ”部分
下面定義一個沒有參數的函數:
def doWhile(): Unit = {
var line = ""
do {
line = readLine()
println("Read : " + line)
} while(line != "")
}
在調用無參函數時,可以直接省略圓括號(),例如在main中調用doWhile:
def main(args: Array[String]) {
doWhile
}
流程控制
- if…else…
var file = "test.txt"
file = if( !args.isEmpty ) args(0) else "Hello Scala"
- for:其中的1 to 10可以寫成1.to(10)
for(i <- 1 to 10) println("Number is : " + i)
- do…while
do {
line = readLine()
println("Read : " + line)
} while(line != "")
異常處理
通過case進行模式匹配異常,只要匹配到一個異常,就不會繼續往下走,finally只要存在,就會被處理,其中的=>表示對異常怎麼處理。
val n = 99
try{
val half = if(n%2 == 0) n/2 else throw new RuntimeException("Number must be an even.")
} catch {
case e : Exception => println("The exception is " + e.getMessage)
} finally {
//Other Operation
}