院校网站建设对比分析实训报总结,怎么设立网站,二次开发的意思,网站开发保密协议模板目录
单分支
双分支
多分支 for 循环控制
循环守卫 循环步长
循环嵌套 循环返回值 While 和 do..While 循环控制
While循环控制
do..While 循环控制 循环中断 单分支
if (条件表达式) {执行代码块
}var age StdIn.readShort()if (age 18){println(童年 StdIn.readShort()if (age 18){println(童年)
}双分支
if (条件表达式) {执行代码块 1
} else {执行代码块 2
}var age StdIn.readShort()if (age 18){println(童年)}else{println(成年)}
多分支
if (条件表达式 1) {执行代码块 1
}
else if (条件表达式 2) {执行代码块 2
……
else {执行代码块 n
}println(input age)
var age StdIn.readInt()if (age 18){println(童年)
}else if(age18 age30){println(中年)
}else{println(老年)
}Scala 中 if else 表达式其实是有返回值的具体返回值取决于满足条件的代码体的最后一行内容。
val res :String if (age 18){童年
}else if(age18 age30){中年
}else{老年
}println(res)for 循环控制
for(i - 1 to 3){print(i )
}
println()- 表示java里面的:,1 to 3 表示[1,2,3],前后闭合
循环守卫
for(i - 1 to 3 if i ! 2) { print(i )
}
println()循环守卫即循环保护式也称条件判断式守卫。保护式为 true 则进入循环体内部为false 则跳过类似于continue。 循环步长
for (i - 1 to 10 by 2) {println(i i)
} 循环嵌套 //两种写法效果相同但是第二种能应对更多的情况for (i - 1 to 2; j - 1 to 2) {println( i i j j)}for (i - 1 to 2) {// some codefor (j - 1 to 2) {println( i i j j)}}
for 推导式一行中有多个表达式时所以要加 ; 来隔断逻辑for 推导式有一个不成文的约定当 for 推导式仅包含单一表达式时使用圆括号 当包含多个表达式时一般每行一个表达式并用花括号代替圆括号如下
for {i - 1 to 3 j 4 - i
} {println(i i j j)
}上面代码等价于
for (i - 1 to 3) { var j 4 - iprintln(i i j j)
}循环返回值 将遍历过程中处理的结果返回到一个新 Vector 集合中使用 yield 关键字。 很少使用 了解即可 var res for (i - 1 to 10) yield (i 1)println(res) While 和 do..While 循环控制
While循环控制
循环变量初始化
while (循环条件) {循环体(语句) 循环变量迭代
}循环条件是返回一个布尔值的表达式while 循环是先判断再执行语句与 for 语句不同while 语句没有返回值即整个 while 语句的结果是Unit 类型()因为 while 中没有返回值所以当要用该语句来计算并返回结果时就不可避免的使用变量而变量需要声明在 while 循环的外部那么就等同于循环的内部对外部的变量造成了影响所以不推荐使用而是推荐使用 for 循环。var i 1while (i 5) {println(swhile第${i}次输出)i 1} do..While 循环控制
循环变量初始化;
do{循环体(语句) 循环变量迭代
} while(循环条件)循环条件是返回一个布尔值的表达式do..while 循环是先执行再判断var i 1do {println(s这是do while第${i}次输出)i 1} while (i 5) 循环中断 Scala 内置控制结构特地去掉了 break 和 continue是为了更好的适应函数式编程推荐使用函数式的风格解决break 和continue 的功能而不是一个关键字。Scala 中使用breakable 控制结构来实现 break 和 continue 功能。 import scala.util.control.Breaksobject TestContinue {def main(args: Array[String]): Unit {Breaks.breakable(for (i - 1 to 10) {if (i % 2 0) {Breaks.break()}println(i)})println(exit)}}