本节都是比较简单的介绍,更具体的内容会在后面的视频中具体讲解。
函数定义
下面以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
}