控制语句if…else,while,do…while,Breaks
if…else…
- if语句
if表达式本身是有值的
if(age > 18) 1 else 0
以这个例子为列,整个表达式的值就是1
最后一个语句就是表达式的返回值
这条语句没有返回值,因为isadult = 1仅仅只是赋值
if(age > 18) isadult = 1 else isadult = 0
if语句的类型推断,如果两个类型不同Scala编译器就会去找两个类型的公共父类
scala> var age = 30
age: Int = 30
scala>
scala> if( age < 18 ){
| println("不是成年人")
| }
scala>
scala> if( age < 18 ){
| println("不是成年人")
| } else
| "成年人"
res1: Any = 成年人
scala>
scala> if(age > 18) "adult" else 0
res2: Any = adult
scala>
Breaks
break语句,终止循环语句并将执行立刻循环的下面语句。
package edu.lm.dream.test
import scala.util.control.Breaks
/**
* Created by lm on 2016/12/24.
*/
object BreakTest {
def main(args: Array[String]) {
val numList = List(1,2,3,4,5,6,7,8,9,10)
val loop = new Breaks
loop.breakable{for(a <- numList){
println("Value of : " + a)
if(a == 4){
//break
loop.break()
}
}}
println("After the loop")
}
}
while
do … while
do…while 循环会确保至少执行一次循环