scala控制结构
#判断
scala> def min(x:Int,y:Int):Int={
var a=x
if(x>y) a=y
return a
}
scala> min(1,2)
res1: Int = 1
#循环 ##引申:函数式编程里面尽量使用常量,所以尽量避免 while do? 变量?
while (A) B
do B while A
scala> var m=3
scala> while (m!=0){
println(m)
m-=1
}
3
2
1
#枚举
for (i<-e) E(i)
scala> for ( i <- 1 to 4)
println("No."+i)
No.1
No.2
No.3
No.4
scala> for(i <- 1 to 4; j <- 1 to 2) println(i+j)
2
3
3
4
4
5
5
6
#
scala> var No = for ( i <- 1 to 4) yield i
No: scala.collection.immutable.IndexedSeq[Int] = Vector(1, 2, 3, 4)
#Practise
for (i <- "HELLO") yield i
for(i<-1 to 2) yield i.toChar
for(i <- "HELLO";j<- 1 to 2) yield(i+j).toChar
for(i<- 1 to 2;j<- "HELLO") yield(i+j).toChar
#匹配(match)
a match{
case e1 => E1
case _ => ...
}
#异常处理(throw/try)
try {...} catch{case ...;case ...} finally(A.close()}
#输入输出
scala控制结构的更多相关文章
- Scala 控制结构
Scala内建的控制结构屈指可数,仅有if, while, for, match, try和函数调用而已. 几乎所有的Scala控制结构都会产生某个值(while和 do while虽然不能产生有意义 ...
- 2.scala控制结构、函数、异常处理
2.scala控制结构.函数.异常处理---小书匠,在线编辑器,MARKDOWN,Evernote,文件版本 a:focus { outline: thin dotted #333; outline: ...
- Scala实战高手****第4课:零基础彻底实战Scala控制结构及Spark源码解析
1.环境搭建 基础环境配置 jdk+idea+maven+scala2.11.以上工具安装配置此处不再赘述. 2.源码导入 官网下载spark源码后解压到合适的项目目录下,打开idea,File-&g ...
- Scala 编程(四)内建控制结构
if 表达式 Scala 的 if 如同许多其它语言中的一样工作.它测试一个状态并据其是否为真,执行两个分支中的一个: var filename = "default.txt" i ...
- scala编程(七)——内建控制结构
几乎所有的 Scala 的控制结构都会产生某个值.这是函数式语言所采用的方式,程序被看成是计算值的活动,因此程序的控件也应当这么做.另外,指令式语言经常具有三元操作符(如 C,C++和 Java 的? ...
- Programming In Scala笔记-第九章、控制抽象
本章主要讲解在Scala中如何使用函数值来自定义新的控制结构,并且介绍Curring和By-name参数的概念. 一.减少重复代码 1.重复代码的场景描述 前面定义的函数,将实现某功能的代码封装到一起 ...
- 2019/2/23Scala学习开始(Scala简介)
Scala简介 Scala是一门多范式(multi-paradigm)的编程语言,设计初衷是要集成面向对象编程和函数式编程的各种特性. Scala运行在Java虚拟机上,并兼容现有的Java程序 ...
- Scala详解
1 快速入门... 4 1.1 分号... 4 1.2 常变量声明... 4 1.2.1 val常量... 4 1.2.2 ...
- Scala学习(二)练习
Scala控制结构和函数&练习 1. 一个数字如果为正数,则它的signum为1:如果是负数,则signum为-1:如果为0,则signum为0:编写一个函数来计算这个值 简单逻辑判断: 测试 ...
随机推荐
- css属性在各种浏览器上的兼容性
transform:在360急速浏览器不支持,在IE兼容性上看IE浏览器的版本,IE9+是支持.
- 【转】ORACLE定期清理INACTIVE会话
源地址:http://www.cnblogs.com/kerrycode/p/3636992.html ORACLE数据库会话有ACTIVE.INACTIVE.KILLED. CACHED.SNIPE ...
- 返回值优化(RVO)
C++的函数中,如果返回值是一个对象,那么理论上它不可避免的会调用对象的构造函数和析构函数,从而导致一定的效率损耗.如下函数所示: A test() { A a; return a; } 在test函 ...
- UILable
//UILable的大小自适应实例 UILabel *myLable = [[UILabel alloc] initWithFrame:CGRectMake(, , , )];//设定位置与大小 [m ...
- 成功部署SSIS中含有Oracle数据库连接的ETL包
RT,正式写之前,我想说,真TMD不容易!!! 写博客,责任心,很重要 在百度搜出来的内地博客技术文章(CSDN.ITEYE.CNBLOGS……),大部分都是不全面,只针对一个遇到的问题点的记录,可以 ...
- 安装Nginx作为Windows服务自启动运行
如果Nginx每次使用都需要手动启动确实很麻烦,所以最好将其设置为Windows系统服务,开机自启动就行了. 1.下载并修改运行环境支持程序 1).下载地址:http://ng-srvinst.att ...
- java工作流软件发送邮件的方案
利用javamail的功能将发送邮件的功能集成到java工作流系统中.javamail包提供有发送邮件的方法,设置发送人地址,收件人地址,抄送,主题,邮件服务器地址,认证用户等信息,再调用javama ...
- json工具包比较 fastjson jackson gson
对json进行json-object进行相互转化时,笔者接触到三种工具jar,现对其进行比较. fastjson:速度最快,阿里巴巴开源. jackson:springMvc 默认使用. gson:谷 ...
- 剑指Offer:面试题32——从1到n整数中1出现的次数(java实现)
问题描述: 输入一个整数n,求1到n这n个整数的十进制表示中1出现的次数.例如输入12,从1到12这些整数中包含1的数字有1,10,11,12,1一共出现了5次. 思路:(不考虑时间效率的解法,肯定不 ...
- 九、数据库——sql server 2008导入excel
昨天分配给我一个活,让我手动录入新闻网页的数据,包括每条新闻的标题.时间和链接. 一开始,就是按照最原始的手动录入的方法,一条条的录入.发现这简直就是在浪费时间,于是就想了一种新方法. 1.将网页中的 ...