一天学完spark的Scala基础语法教程教程三、循环结构(idea版本)

简介: 一天学完spark的Scala基础语法教程教程三、循环结构(idea版本)

创建测试类【day1/demo3.scalc】,选择类型为【object】

image.png

image.png

image.png


Scala 循环

有的时候,我们可能需要多次执行同一块代码。一般情况下,语句是按顺序执行的:函数中的第一个语句先执行,接着是第二个语句,依此类推。


编程语言提供了更为复杂执行路径的多种控制结构。


循环语句允许我们多次执行一个语句或语句组。但是前提是有四要素:


1、初始值


2、表达式


3、循环体


4、迭代器


有这是个才算一个完整的循环。


循环类型

Scala 语言提供了以下几种循环类型。点击链接查看每个类型的细节。


image.png


while循环

只要给定的条件为 true,Scala 语言中的 while 循环语句会重复执行循环体内的代码块。


示例:


package day1
object demo3 {
  def main(args: Array[String]) {
    // 初始值
    var i = 0;
    // do 循环
    while( i < 10 ){//表达式
      println( "值i是: " + i );//代码块
      i = i + 1;//迭代器
    }
  }
}


image.png

do..while循环

不像 while 循环在循环头部测试循环条件, Scala 语言中,do...while 循环是在循环的尾部检查它的条件。


do...while 循环与 while 循环类似,但是 do...while 循环会确保至少执行一次循环。


示例


package day1
object demo3 {
  def main(args: Array[String]) {
    // 初始值
    var i = 0;
    // do 循环
    do{
      println( "值i是: " + i );//代码块
      i = i + 1;//迭代器
    }while( i < 10 )//表达式
  }
}

image.png

for循环

for 循环允许您编写一个执行指定次数的循环控制结构。


示例


package day1
object demo3 {
  def main(args: Array[String]) {
    var a = 0;//初始值
    // for 循环
    for (i <- 1 to 10) {//表达式是从1开始输出到10,迭代器是自动增长1
      println("输出的i是: " + i);//循环体
    }
  }
}

image.png

for循环很直接的


这是从5输出到10


package day1
object demo3 {
  def main(args: Array[String]) {
    var a = 0;//初始值
    // for 循环
    for (i <- 5 to 10) {//表达式是从5输出到10,迭代器是自动增长1
      println("输出的i是: " + i);//循环体
    }
  }
}

image.png

如果是想不包含最后一个数用【until】替换掉【to】即可。


遍历集合列表

package day1
object demo3 {
  def main(args: Array[String]) {
    var i = 0;
    val numList = List(1,2,3,4,5,6);
    // for 循环
    for( i <- numList ){
      println( "集合按下标顺序输出: " + i );
    }
  }
}


image.png

循环控制语句

Scala 语言中默认是没有 break 语句,但是你在 Scala 2.8 版本后可以使用另外一种方式来实现 break 语句。当在循环中使用 break 语句,在执行到该语句时,就会中断循环并执行循环体之后的代码块。


示例


Scala 中 break 的语法有点不大一样,示例如下:


package day1
// 导入以下包
import scala.util.control._
object demo3 {
  def main(args: Array[String]) {
    // 创建 Breaks 对象
    val loop = new Breaks;
    // 在 breakable 中循环
    loop.breakable {
      // 循环
      for (x <- 0 to 10) {
        print(x)
        if (x == 5) {
          // 循环中断
          loop.break;
        }
      }
    }
  }
}

image.png


很明显,当i==5的时候就停止循环了。


总结

到这里有关一天学完spark的Scala基础语法教程教程三、循环结构(idea版本)就结束了


希望能对大家有所帮助。


欢迎一键三连,谢谢。


相关文章
|
1天前
|
SQL 存储 分布式计算
在scala中使用spark
在scala中使用spark
3 0
|
1天前
|
Java 编译器 Scala
IDEA上的Scala环境搭建
本文指导如何搭建Scala开发环境。首先,安装Scala编译器`scala-2.12.10.msi`,通过DOS窗口验证安装成功。然后,在IDEA中,安装Scala插件,创建Maven工程,删除默认包,新建Scala源码包,并在其中创建Scala Object类。接着,配置项目结构,添加Scala SDK,确保Maven、Language Level和Compiler的bytecode版本设置正确。最后,编写并测试基本的Scala代码。
28 2
IDEA上的Scala环境搭建
|
1天前
|
分布式计算 Java Scala
spark 与 scala 的对应版本查看、在idea中maven版本不要选择17,弄了好久,换成11就可以啦
spark 与 scala 的对应版本查看、.在idea中maven版本不要选择17,弄了好久,换成11就可以啦
117 2
|
1天前
|
分布式计算 数据处理 Scala
Spark 集群和 Scala 编程语言的关系
Spark 集群和 Scala 编程语言的关系
34 0
|
1天前
|
分布式计算 Java Scala
Spark编程语言选择:Scala、Java和Python
Spark编程语言选择:Scala、Java和Python
Spark编程语言选择:Scala、Java和Python
|
SQL 消息中间件 分布式计算
如何查看spark与hadoop、kafka、Scala、flume、hive等兼容版本【适用于任何版本】
如何查看spark与hadoop、kafka、Scala、flume、hive等兼容版本【适用于任何版本】
703 0
如何查看spark与hadoop、kafka、Scala、flume、hive等兼容版本【适用于任何版本】
|
12月前
|
存储 分布式计算 Scala
Spark-RDD 键值对的操作(Scala版)
Spark-RDD 键值对的操作(Scala版)
|
12月前
|
SQL 存储 JSON
人人都懂Spark-SQL基础操作(Scala版)
人人都懂Spark-SQL基础操作(Scala版)
|
12月前
|
JSON 分布式计算 算法
Spark-编程进阶(Scala版)
Spark-编程进阶(Scala版)