`

scala学习笔记(一):for语句

 
阅读更多

1、for语句直接循环

 

for (i <- 1 to 10) println("Value of i: " + i)
输出:
Value of i: 1
Value of i: 2
Value of i: 3
Value of i: 4
Value of i: 5
Value of i: 6
Value of i: 7
Value of i: 8
Value of i: 9
Value of i: 10
/**
* for语句开区间[1,10)
*/
for(i <- 1 until 10) println("Value of i: " + i)
输出:
Value of i: 1
Value of i: 2
Value of i: 3
Value of i: 4
Value of i: 5
Value of i: 6
Value of i: 7
Value of i: 8
Value of i: 9

 2、for语句多区间循环

 

 /**
  * 多区间循环
  * java 方式:
  * for(int a = 1 ;a <= 3 ; a ++){
  *   for(int b = 1 ;b <= 4 ; b ++){
  *       System.out.println("Value of a: " + a);
  *       System.out.println("Value of b: " + b)
  *   }
  * }
  */
for(a <- 1 to 3; b <- 1 to 4){
      println( "Value of a: " + a );
      println( "Value of b: " + b );
}
输出:
Value of a: 1
Value of b: 1
Value of a: 1
Value of b: 2
Value of a: 1
Value of b: 3
Value of a: 1
Value of b: 4
Value of a: 2
Value of b: 1
Value of a: 2
Value of b: 2
Value of a: 2
Value of b: 3
Value of a: 2
Value of b: 4
Value of a: 3
Value of b: 1
Value of a: 3
Value of b: 2
Value of a: 3
Value of b: 3
Value of a: 3
Value of b: 4

 3、for语句多区间循环 后面的区间可以使用前面的区间变量a

 

for(a <- 1 to 3; b <- 0 to a){
      println( "Value of a: " + a );
      println( "Value of b: " + b );
}
输出:
Value of a: 1
Value of b: 0
Value of a: 1
Value of b: 1
Value of a: 2
Value of b: 0
Value of a: 2
Value of b: 1
Value of a: 2
Value of b: 2
Value of a: 3
Value of b: 0
Value of a: 3
Value of b: 1
Value of a: 3
Value of b: 2
Value of a: 3
Value of b: 3

 

 4、for语句循环过滤,如果有多个条件使用;分开

 

val numList = List(1,2,3,4,5,6,7,8,9)
for(i <- numList if i < 6) println("Value of "+i)
输出:
Value of 1
Value of 2
Value of 3
Value of 4
Value of 5

 

 5、for语句使用yield 来使for语句循环的返回值作为一个变量存储

 

 

val numList = List(1,2,3,4,5,6,7,8,9)
val retVal = for(i <- numList if i > 2; if i<4) yield i
for (i <- retVal) println("Value of "+i)
输出:
Value of 3

 

 

 

分享到:
评论

相关推荐

    Scala学习笔记(全)

    ### Scala学习笔记(全) #### 一、Scala概述与特点 Scala是一种多范式的编程语言,旨在集成面向对象编程和函数式编程的各种特性。它运行于Java平台(Java虚拟机JVM),并且能够完全兼容所有的Java程序。这使得Scala...

    Scala学习笔记

    ### Scala学习笔记关键知识点 #### 1. “均码”哲学与并发编程 - **“均码”哲学**: 指的是Scala设计时遵循的一种设计理念,即尽量保持语言的统一性和简洁性,使得不同的功能和特性能够以一种相似的方式进行处理。...

    scala学习资料

    Scala是一种强大的、现代的编程语言,它融合了面向对象编程(OOP)和函数式编程(FP)的特性,为开发者提供了丰富的表达能力和高效的代码执行环境。作为Java平台上的一个成员,Scala程序可以在Java虚拟机(JVM)上...

    scala学习笔记

    以上内容覆盖了 Scala 编程语言的核心知识点,从基本语法到高级特性,为初学者提供了一个全面的学习指南。Scala 是一门功能强大且灵活的语言,适合于构建大型的、复杂的软件系统。希望这些知识点能够帮助读者更好地...

    scala讲解笔记 入门及进阶 PDF文档1-5

    Scala是一种强大的多范式编程语言,它融合了面向对象和函数式编程的特性,被广泛应用于大数据处理、分布式计算和高性能应用开发。...每个文档都配有实例和注释,便于理解和实践,是Scala学习者宝贵的资源。

    Scala初学者入门课程笔记

    * for 语句:Scala 的 for 语句可以遍历集合、循环守卫、循环步长和嵌套循环等。 * while 循环:Scala 的 while 循环与 Java 相似,但可以使用 `break` 语句中断循环。 函数式编程 Scala 的函数式编程是指使用函数...

    scala的操作笔记

    ### Scala的操作笔记 #### 一、课程目标与学习路径 本课程旨在通过三个阶段的目标来逐步深入学习Scala语言,最终能够灵活运用Scala进行Spark程序的开发,并具备阅读Spark内核源码的能力。 - **初级目标**:掌握...

    Scala-notes:小号

    这暗示着这份资料可能来源于一个开源项目,或者是一个组织良好的学习资源,包含按章节或主题划分的Scala学习笔记和练习。 在深入探讨Scala的知识点时,我们可以关注以下几个核心领域: 1. **类型系统**:Scala拥有...

    Spark学习笔记

    ### Spark学习笔记知识点详解 #### 一、Scala基础概述 **1.1 什么是Scala** Scala是一种现代化的、多范式的编程语言,旨在融合面向对象编程与函数式编程的优势。它运行于Java平台上,能够充分利用Java虚拟机(JVM)...

    Scala_day01_scala_

    在学习笔记中,这可能以简单的case语句形式出现。 另外,Scala中的 Actors 模型提供了轻量级线程,用于实现并发和并行计算。Actors有自己的消息队列,可以安全地交换信息,避免了传统多线程中的竞态条件问题。初学...

    scala-with-cats:scala with cats一书的笔记,习题

    Scala是一种强大的、面向对象的编程语言,它集成了函数式编程的特点,被广泛应用于大数据处理、分布式计算和Web开发等领域。Cats是Scala生态系统中的一个核心库,专注于提供类型类和Monad等抽象,用于构建类型安全、...

    Hadoop,SPRK开发学习笔记

    在Spark的学习笔记中,你会接触到RDD(弹性分布式数据集)、SparkContext、DataFrame和SparkSession等关键概念,以及如何使用PySpark或Scala进行编程。 在实际开发过程中,Hadoop和Spark经常协同工作。例如,Hive...

    Spark SQL学习笔记

    ### Spark SQL 学习笔记知识点总结 #### 一、Spark SQL 概述 - **定义**:Spark SQL 是 Apache Spark 的一个模块,用于处理结构化数据。它提供了 DataFrame 和 Dataset API,以及支持 SQL 查询的能力。这些特性...

    scalaQuery18情况总结代码

    这个“scalaQuery18情况总结代码”很可能是一个开发者在学习和使用ScalaQuery v1.8版本时所做的笔记和示例集合,经过两天的学习、实践和调试后整理出的成果。 在ScalaQuery中,主要的知识点包括: 1. **基本概念**...

    python学习笔记(六)

    在本篇“Python学习笔记(六)”中,我们将深入探讨Python编程语言的一个强大工具——Jupyter Notebook。Jupyter Notebook是一款交互式计算环境,它允许程序员和数据科学家以富文本格式编写文档,同时嵌入代码、输出...

    大数据学习笔记

    ### 大数据学习笔记知识点概览 #### 第一部分:Spark学习 ##### 第1章:Spark介绍 - **1.1 Spark简介与发展** - **背景**:随着大数据处理需求的增长,传统的Hadoop MapReduce框架虽然提供了强大的计算能力,但...

    Spark笔记,发出来希望可以帮到各位

    控制语句结构涵盖条件分支(if...else)和循环(for、while、do...while)语句,这些语句在Scala中具有独特的语法结构。 在方法和函数的讨论中,了解到Scala中的方法是类的一部分,而函数则可以赋值给变量。定义...

    functional-programming-scala:在Coursera上的Scala专业化中的函数式编程工作已完成

    "functional-programming-scala-master"可能是一个GitHub仓库的名称,暗示学习者可能已经下载了课程的源代码或笔记,并将其组织成一个名为"functional-programming-scala-master"的项目。这个项目的结构可能包括练习...

    【Spark研究】极简 Spark 入门笔记——安装和第一个回归程序

    Spark 提供了一个交互式的命令行终端,用户可以快速地测试一些命令和语句,而无需每次都保存代码脚本然后调用执行。 三、Spark 机器学习库 MLlib Spark 的数据分析功能包含在一个称为 MLlib 的组件当中,顾名思义...

Global site tag (gtag.js) - Google Analytics