Scala-簡明速學01-控制語句
while循環
Scala中的while循環基本與Java相似,但是Scala中沒有++
,--
自增和自減操作符
object While {
def main(args: Array[String]): Unit = {
var n = 10
while (n > 0) {//Scala沒有++,--運算符,無法寫成while(n-->0)這樣的形式
println(n)
n -= 1
}
}
}
for循環
Scala中沒有for循環,可以使用簡易for語句或者foreach函數
object For {
def main(args: Array[String]): Unit = {
//簡易for語句
for (i <- 1 to 10) {
println(i)
}
println("#################################################################################")
//簡易for語句
val names = List("Jack", "Jill", "Nate", "Kara", "Kim", "Jullie", "Paul", "Peter")
for (name <- names) {
println(name)
}
println("#################################################################################")
//foreach 可以將參數簡寫爲 _,_就代表了集合中的一個元素
names.foreach(println(_))
println("#################################################################################")
//foreach 可以對集合元素進行參數命名
names.foreach((name) => {
println(name)
})
println("#################################################################################")
}
}
break跳出循環
Scala中沒有break
關鍵字,而是使用Break工具類用捕獲異常的方式來模擬break關鍵字
注意使用Break方法時要引入scala.util.control.Breaks._
,其中的_
相當於Java中的*
,表示靜態引入Break
類中的所有方法
import scala.util.control.Breaks._
object Break {
def main(args: Array[String]): Unit = {
//breakable實際是一個方法,接受方法作爲參數,並且使用捕獲BreakControl異常的方式來控制流程
breakable {
//傳入給breakable方法的方法
var n = 10
for (c <- "Hello,Scala") {
if (n == 5) break //實際break並不是關鍵字,而是調用Breaks類中的break()方法,break()方法中拋出一個BreakControl異常來控制流程
println(c)
n -= 1
}
}
}
}