系列文章目录
@TOC
前言
一、分支结构
1.if(布尔表达式) { // 如果布尔表达式为 true 则执行该语句块 }
object Test {
def main(args: Array[String]) {
var x = 10;
if( x < 20 ){
println("x < 20");
}
}
}
2.if(布尔表达式){ // 如果布尔表达式为 true 则执行该语句块 }else{ // 如果布尔表达式为 false 则执行该语句块 }
object Test {
def main(args: Array[String]) {
var x = 30;
if( x < 20 ){
println("x 小于 20");
}else{
println("x 大于 20");
}
}
}
3.多个if -else if(布尔表达式 1){ // 如果布尔表达式 1 为 true 则执行该语句块 }else if(布尔表达式 2){ // 如果布尔表达式 2 为 true 则执行该语句块 }else if(布尔表达式 3){ // 如果布尔表达式 3 为 true 则执行该语句块 }else { // 如果以上条件都为 false 执行该语句块 }
object Test {
def main(args: Array[String]) {
var x = 30;
if( x == 10 ){
println("X 的值为 10");
}else if( x == 20 ){
println("X 的值为 20");
}else if( x == 30 ){
println("X 的值为 30");
}else{
println("无法判断 X 的值");
}
}
}
4.循环嵌套 if(布尔表达式 1){ // 如果布尔表达式 1 为 true 则执行该语句块 if(布尔表达式 2){ // 如果布尔表达式 2 为 true 则执行该语句块 } }
object Test {
def main(args: Array[String]) {
var x = 30;
var y = 10;
if( x == 30 ){
if( y == 10 ){
println("X = 30 , Y = 10");
}
}
}
}
注意: Scala中任意 表达式都是有返回值的,也就意味着if else表达式其实是有返回结果的,具体返回结果的值取决于满足条件的代码体的最后一行内容
二、循环结构
1.for 循环
for( a <- 1 to 10){ //1-10
println( "Value of a: " + a );
}
for( b <- 1 until 10){ //1-9
println( "Value of a: " + a );
}
//循环守卫,加上条件判断,为true进度循环体,为false 则跳过 ,类似于continue
for(i <- 1 to 3 if i != 2) {
print(i + " ")
}
2.while/do while(略) Scala内置控制结构特地 去掉了break 和continue,是为了 更好的适应函数化编程 , 推荐使用 函数式的风格解决break和contine的功能,而不是一个关键字