🙆♂️🙆♂️ 写在前面
🏠 个人主页:csdn春和
📚 推荐专栏:更多专栏尽在主页!
JavaWeb专栏(从入门到实战超详细!!!)
SSM专栏 (更新中…)
📖 本期文章:Scala基础语法入门(五)Scala循环控制第二篇
如果对您有帮助还请三连支持,定会一 一回访!🙋🏻♂️
📌本文目录
- While和do while循环
- 1、while循环
- 2、do while循环
- 3、循环中断
- 4、循环练习
📝 写在前面
While和do while循环 1、while循环Scala循环控制结构之While循环和do while循环
基本语句:
循环变量初始化
while (循环条件) {
循环体(语句)
循环变量迭代
}
1、while循环是先判断再执行语句
2、和for循环不同
while循环没有返回值
即整个 while 语句的结果是 Unit 类型()
3、因为 while 中没有返回值,所以当要用该语句来计算并返回结果时,就不可避免 的使用变量,而变量需要声明在 while 循环的外部,那么就等同于循环的内部对外部的变量 造成了影响,所以不推荐使用,而是推荐使用 for 循环。
示例代码:
object Scala03_WhileLoop01 {
def main(args: Array[String]): Unit = {
// TODO while循环
var i = 0
while (i < 10){
println("悬笔一绝,那岸边浪千叠")
i += 1 // 相当于 i++
}
}
}
2、do while循环
基本语法:
do{
循环体
循环变量迭代
}while(循环条件)
1、循环条件是返回一个布尔值的表达式
2、
do..while 循环是先执行,再判断
所以循环体至少会执行一次
示例代码:
// TODO do while循环
var j = 1
do {
println("无关风月,我题序等你回")
j += 1
}while(j <= 10)
3、循环中断
scala是完全面向对象的语言,所以无法使用break,continue关键字这样的方式来中断,或继续循环逻辑,而是采用了函数式编程的方式代替了循环语法中的break和continue
首先Scala中是没有continue关键字的
因为马丁哥觉得没有必要增加新的语法去做这个事情,如果想要实现continue的效果,用下面的代码即可:
for (i <- 1 to 5){
if (i != 3){
println(i)
}
}
再来看看break
那么马丁是如何实现break功能的呢?
for (i <- 1 to 5){
if (i == 3){
// Scala中没有break关键字,采用面向对象的方式来代替
// 采用抛出异常的方式跳出循环
Breaks.break()
}
println(i)
}
println("hhhh")
看看运行结果
由此可以看出
Scala中的break() 是采用抛出异常的方式来跳出循环
,即中断循环
所以马丁大神的解决方案是:
Breaks.breakable(
for (i <- 1 to 5){
if (i == 3){
// Scala中没有break关键字,采用面向对象的方式来代替
// 采用抛出异常的方式跳出循环
Breaks.break()
}
println(i)
}
)
println("hhhh")
但是这样写会显得比较麻烦还有一种简单一点的写法
4、循环练习需求:打印九九乘法表
👨🏻💻 使用for循环实现
object Scala05_LoopTest {
def main(args: Array[String]): Unit = {
// TODO 打印九九乘法表
for (i <- 1 to 9){
for (j <- 1 to i){
print(s"${j} * ${i} = ${i*j} \t")
}
println()
}
}
}
👨🏻💻 使用while循环实现
// 使用while循环打印99乘法表
var i = 1
while (i <= 9) {
var j = 1
while (j <= i) {
print(s"${j} * ${i} = ${i * j} \t")
j += 1
}
println()
i += 1
}
🖨 打印结果:
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)