• For循环控制


    目录

    范围数据循环(To)

    范围数据循环(until)

    集合遍历

    循环守卫


    Scala也为for循环这一常见的控制结构提供了非常多的特性,这些for循环的特性被称为推导式或for表达式。

    注意
    //在Scala中对象的方法调用我们可以省略点,只要之间空一格就可以了
    // 然后后面空一格再写参数,如果参数只有一个的话,括号也可以省略
    

    范围数据循环(To)

    范围遍历

    基本语法

    for( i <- 1 to 6 ) {

                  print(i + " " )

    }

    println()

    说明:

    (1)i 表示循环的变量,<- 规定to

    (2)i 将会从1-6循环,前后闭合

    案例实操

    1. package Chapter04
    2. object Test_02ForLoop {
    3. def main(args: Array[String]): Unit = {
    4. //for循环控制(to)
    5. for (i <- 1 to 9){
    6. println("第"+i+"句"+"中国我爱你")
    7. }
    8. //for(i <- 1.to(9)){
    9. //println("第"+i+"句我爱你中国")
    10. //}
    11. }
    12. }

    运行结果

     范围数据循环(until)

    不包含边界的范围遍历

    基本语法

    for( i <- 1 until 3 ) {

                  print(i + " " )

    }

    println()

    说明:

    (1)这种方式和前面的区别在于 i 是从 1 到 3-1

    (2)即使前闭合后开的范围

    案例实操

    1. package Chapter04
    2. object Test_02ForLoop {
    3. def main(args: Array[String]): Unit = {
    4. //不包含边界的范围遍历
    5. for(i <- Range(1,10)){
    6. println(i+".Hello")
    7. }
    8. println("-----------")
    9. for(i <- 1 until 10){
    10. println(i+".Hello")
    11. }
    12. }
    13. }

    运行结果

    集合遍历

    案例实操

    1. package Chapter04
    2. object Test_02ForLoop {
    3. def main(args: Array[String]): Unit = {
    4. //集合遍历
    5. for(i <- Array(2022, 520,1314)){
    6. println(i)
    7. }
    8. println("---")
    9. for(i <- List(2022, 520,1314)){
    10. println(i)
    11. }
    12. println("---")
    13. for(i <- Set(2022, 520,1314)){
    14. println(i)
    15. }
    16. }
    17. }

    运行结果

    循环守卫

    基本语法

    for( i <- 1 to 3  if i !=2) {

                  print(i + " " )

    }

    println()

    说明:

    (1)循环守卫,即循环保护式(也称条件判断式,守卫)。保护式为true则进入循环体内部,为false则跳过,类似于continue。

    (2)上面的代码等价

    for( i <- 1 to 3) {

          if (i !=2 ){

                  print(i + " " )

    }

      }

    案例实操

    1. package Chapter04
    2. object Test_02ForLoop {
    3. def main(args: Array[String]): Unit = {
    4. //循环守卫
    5. for(i<- 1 to 3 if i !=2 ){
    6. println("第"+i+"句"+".我爱你中国")
    7. }
    8. println("----")
    9. for(i<- 1 to 3) {
    10. if (i != 2) {
    11. println("第" + i + "句" + ".我爱你中国")
    12. }
    13. }
    14. }
    15. }

    运行结果

  • 相关阅读:
    API接口的用途以及接入示例
    普冉PY32系列(十三) SPI驱动WS2812全彩LED
    Maven学习笔记
    stl_stack_queue的使用及OJ题
    【大数据】flink 读取文件数据写入ElasticSearch
    【Java 基础语法】Java 的文件操作
    C专家编程 第5章 对链接的思考 5.3 函数库链接的5个特殊秘密
    【nlp】2.5(gpu version)人名分类器实战项目(对比RNN、LSTM、GRU模型)工程管理方式
    嵌入式Linux裸机开发(四)IMX6U主频和时钟配置
    数据存储全方案----详解持久化技术
  • 原文地址:https://blog.csdn.net/qq_70085330/article/details/126157654