1、  if表达式

2、  句终结符、块表达式

3、  输入与输出

4、  循环

5、  高级for循环

1、  if表达式

  if表达式的定义:scala中,表达式是有值的,就是if或者else中最后一行语句返回的值(和java区别)。可以将if表达式赋予一个变量,也可以提前定义一个变量,通常使用第一种写法。

  if表达式类型推断:if表达式式有值的,如果if返回值类型和else返回值类型不同时,scala会自动推断,取两个类型的公共父类型(Any是Int 和String的父类型)。If后面没有跟else,则默认else的值为Unit,也用()表示,类似于java中的void和null。

  将if语句放在多行中:默认情况下,REPL只能解释一行语句,但if表达式通常需要放在多上,可以用{}的方式比如以下方式,或者使用:paste和ctrl+D的方式。

  

2、  语句终结符、块表达式

  默认情况下,scala不需要语句终结符,默认每行作为一个语句。

  一行放多条语句:如果一行放多个语句必须使用语句终结符,通常来说,对于多行语句,还是会使用花括号的方式。

  块表达式:块表达式,值的就是{}中的值,其中包含多条语句,最后一个语句的值就是块表达式的返回值。

  

3、  输入与输出

  print和println:print打印时不加换行符,println打印时会加一个换行符。

  printtf:可以用于格式化,相当于占位符。

  readLine:从控制台中读取用户输入的数据。

  

4、  循环

  

  While do循环:scala中while do循环,基本语义和java相同。

  Scale中无for循环,只能使用while代替for循环,或者使用简易版的for语句。简易版for语句如下图,或者使用until,表达不达上限,也可以对字符串进行遍历,类似于java的增强for循环。

  Scala跳出循环:scala没有类似java的break,可以使用boolean类型变量、return或者Breaks的break函数来替代使用。

  

5、  高级for循环

  多重for循环:九九乘法表

  

  if守卫:取奇数

  

  for推导式:构造集合

  

2、scala条件控制与循环的更多相关文章

  1. Scala 条件控制与循环

    Scala if表达式 ·if表达式的定义:在Scala中,if表达式是有值的,就是if或者else中最后一行语句返回的值. ·例如,val age = 30; if (age > 18) 1 ...

  2. Scala入门系列(二):条件控制与循环

    条件控制与循环   if表达式 定义:if表达式是有值的,就是if或者else中最后一行语句返回的值. 例如:val isAdult = if (age > 18) 1 else 0 类型推断: ...

  3. 【scala】 scala 条件控制 和异常处理(二)

    1.scala 变量定义 ,var val 区别. var 定义可变变量 val 定义不可变变量,scala 推荐使用.相当于Java的final 变量. scala中包含的基本数据类型详情如下表所示 ...

  4. Python学习--04条件控制与循环结构

    Python学习--04条件控制与循环结构 条件控制 在Python程序中,用if语句实现条件控制. 语法格式: if <条件判断1>: <执行1> elif <条件判断 ...

  5. Python - 条件控制、循环语句 - 第十二天

    Python 条件控制.循环语句 end 关键字 关键字end可以用于将结果输出到同一行,或者在输出的末尾添加不同的字符,实例如下: Python 条件语句是通过一条或多条语句的执行结果(True 或 ...

  6. Shell学习(三)——Shell条件控制和循环语句

    参考博客: [1]Shell脚本的条件控制和循环语句 一.条件控制语句 1.if语句 1.1语法格式: if [ expression ] then Statement(s) to be execut ...

  7. Shell脚本的条件控制和循环语句

    条件判断:if语句 语法格式: if [ expression ] then Statement(s) to be executed if expression is true fi 注意:expre ...

  8. python基础之条件控制与循环

    Python3 条件控制 Python条件语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块. 计算机之所以能做很多自动化的任务,因为它可以自己做条件判断. 比如,输入用户 ...

  9. 04- Shell脚本学习--条件控制和循环语句

    条件判断:if语句 语法格式: if [ expression ] then Statement(s) to be executed if expression is true fi 注意:expre ...

随机推荐

  1. WPF Style设置和模板化Template

    WPF样式设置和模板化是一套功能(样式,模板,触发器和演示图版),可以为产品设置统一外观.类似于html的css,可以快速的设置一系列属性值到控件. 案例:ButtonStyle 这里创建了一个目标类 ...

  2. java常见知识

    在JSP页面获取当前项目名称的方法: 方法1: <%= this.getServletContext().getContextPath() %> 方法2: 使用EL表达式 ${pageCo ...

  3. Dajngo——10 请求与响应 文件上传 GET和POST请求 类视图

    Dajngo——10 HttpRequest对象 HttpResponse对象及子类 form标签中的GET和POST GET提交方式 POST提交方式 request得GET和POST属性 文件上传 ...

  4. BUPT2017 springtraining(15) #3

    这里这里 A.签到题 #include <cstdio> double a[] = {0.4, 0.16, 0.063, 0.025, 0.010, 0.004}; int main() ...

  5. 混合了RBAC和ACL的权限系统(一) -- 用户组织结构

    最近的工作是一个基础设计,打造一个基于RBAC和ACL的权限基础组件. 这个基础组件的特点是:同时混合了RBAC和ACL的认证方式,也就是说同时提供系统级别的授权(RBAC)和对象级别的授权(ACL) ...

  6. 了解一下JAVA中的NIO模块

    网上资料大把,但要写写代码,我这个年纪的人才有一点点记忆了.. 参考URL: http://blog.csdn.net/wuxianglong/article/details/6612282 pack ...

  7. 洛谷——P2347 砝码称重

    https://www.luogu.org/problem/show?pid=2347#sub 题目描述 设有1g.2g.3g.5g.10g.20g的砝码各若干枚(其总重<=1000), 输入输 ...

  8. [Python]croppic 裁剪图片的Python后台实现

    import cStringIO import io import base64 from PIL import Image, ImageTk def img_crop_to_file(request ...

  9. Android: Could not find com.android.support:support-v4:21.0.0

    安装Android Support Repository即可解决这个问题.

  10. u-boot-2014.04移植FL2440(使用eclipse编辑uboot)

    1.首先安装eclipse 安装指令 : apt-get install eclipse 使用上面的命令会安装好jdk 和eclipse,eclipse必须在Java环境执行,所以须要安装jdk环境. ...