Scala基本语法初探
学习Spark不得不学习Scala这门神奇的语言,这次就匆匆忙忙做下总结吧。
Scala是一种基于JVM的语言,是函数是编程和面向对象编程的结合,是一个静态语言,纯静态语言。因为会生成和java相同的class字节码所以它与Java之间可以互相调用。
Scala有一个解释器。
1.定义常量的方法,在这里常量的方法是不能够改变的
val gender="male"
2.定义变量的方法
var lession="chinaHadoop"
3.定义函数的方法,函数的最后一个值被默认为返回值
main函数要定义在object里面
def hello(name:String="Spark"):String={
"Hello :"+name;
}
我们可以这样调用
println(hello("one")) 打印:Hello :one
我们也可以使用它的默认参数,也就是我们在不传参的情况下这里会默认给你分配一个参数、
println(hello()) 打印:Hello :Spark
我们可以定义这样定义一个函数:
val add=(x:Int,y:Int)=>x+y
它是匿名函数,因为函数在Scala里面是一等公民,那么一个函数赋值给一个常量add也是见怪不怪的事情
那么他可以这样调用
add(1,2)
那么我们也可以这样来定义一个函数
def add2(x:Int)(y:Int)=x+y
它是函数的克里化,克里化在以后再说那么我们可以这样调用它
val value = add2(3)(4)
哈,好神奇的语言
4.有没有尝试过在函数的()里面条用过函数???
哈Scala让我见识到了
def printEveryChar(c:String*)={
c.foreach(x=>println(x))
}
其中参数(c:String*)是表示可以传入一系列的String类型的参数
那么我们可以这样调用
printEveryChar("one","two","three","four")
打印结果
one
two
three
four
if条件判断
val x=1
val a=if(x>0)1 else 0
那么a的值就是1,可见判断语句变得非常简洁
循环
1.while循环
var (n,r)=(10,0) while(n>0){ r=r+n n=n-1 println(r) } println(r)
for循环
for(i<- 1 to 10){ println(i) } for(i<- 1.to(10)){ println(i) } /////以上打印1到10,一下打印1到9 for(j<- 1 until 10 ){ println(j) } 另外 for(i<- e1){ for(j<- e2){ ifB{ E(i,j) } } } 可以简化为 for(i<- e1;j<- e2;if B) E(i,j)
Scala之match
匹配match表达式
a match{
case e1=>E1
case e2=>E2
...
}
例如:
val tmp = 4 match { case 1 => "one" case 2 => "two" case 3 => "three" case 4 => "four" } println(tmp)
则输出为four
相关推荐
Scala语法入门.pdf
本文详细的介绍了scala的基础语法,如果你是一个入门者有没有一个很好的资料为建议你下载
此文档是scala的语法大全,一共分为22章,控制结构,特质,高阶函数,集合,模式匹配,样例类,解析,actor等都包括在内。
scala是一种基于JVM的面向对象的函数编程,scala编程相对于java而言代码整洁、开发效率更高。 其中scala优点主要有: 1:面向对象,可以定义class,通过new调用实例对象使用。 2:兼容java,在scala中可以直接调用...
Scala基础语法课件汇总整本书电子教案全套课件完整版ppt最新教学教程.pptx
Scala语法简明教程.pdf
Notepad++里对常用的语言都进行了相关的语法高亮提示,但是没有scala语言的,本资源作用于在notepad++中设置scala的语法高亮(包含使用说明)
Scala 基础语法 如果你之前是一名 Java 程序员,并了解 Java 语言的基础知识,那么你能很快学会 Scala 的基础语法。 Scala 与 Java 的最大区别是:Scala 语句末尾的分号 ; 是可选的。 我们可以认为 Scala 程序是...
Scala 语言规范 2.7版 + Scala 编程 两本中文pdf的电子文档。
scala入门语法介绍,有助于初学入门的学者,欢迎下载
notepad++对于scala语言的支持
scala 基础语法,flink的使用方式
主要介绍了scala基础语法的的相关资料,文中讲解非常详细,帮助大家更好的理解和学习,感兴趣的朋友可以了解下
Scala基础.pdf 比较通俗易懂,适合有一定java基础的人群,或者对scala有了解的人
初学时候,一个字一个字敲出来的总结哦!包括scala安装步骤,scala基础语法,和一些基本的api,类似于javase部分
Swift和Scala语法的比较,包括控制流的结构、表达式、声明、模式和类型。
Scala基础语法,搭建环境,数据结构,模式匹配,函数式编程
stateless-future, 在完全特色的Scala 语法中,异步编程 无状态未来 无状态未来是一组特定于异步编程的领域特定语言,在纯功能。无状态期货为 scala.concurrent.Future 和 scala.async 提供类似的API,除了无状态...
scala基础文档,专门为计算而生的语言,Scala将(Java后者C++)面向对象设计和 函数式编程 结合在一起的简洁的高级编程语言。而 函数式编程强调的是通过传递算子(代码|函数)实现大规模数据集的本地计算。Scala虽然是...
Scala 基础.zip