Scala-简明速学01-控制语句
2019-01-20 本文已影响4人
volkin
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
}
}
}
}