【Scala學習筆記】2. 函數定義、流程控制、異常處理


Scala深入淺出實戰 第2講 by 王家林

本節都是比較簡單的介紹,更具體的內容會在後面的視頻中具體講解。

函數定義

下面以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
    }
發佈了34 篇原創文章 · 獲贊 57 · 訪問量 15萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章