`

scala_0_安装_语法

 
阅读更多

 

0 下载地址: http://www.scala-lang.org/download/

 

1 概念:

可伸缩的语言是一种多范式的编程语言,一种类似java的编程,设计初衷是要集成面向对象编程和函数式编程的各种特性(来在百度百科,基本没看懂这概念表达个啥出来)

 

 

 2 特点:

 a) 能调用java

 b) 面向对象+函数式编程

 c) 语法简洁 

 d)支持并发控制(为spark支持提供保证)

 e)静态类型化(多声明常量 少声明变量)

 f) 强类型语言,必须定义类型

 g) 所有变量都是对象,所有操作都是方法

 

3 安装: 下载后,双击 scala-2.11.1.msi安装即可,然后将按照后的bin目录配置到机器path变量中



 

 

4 安装后验证:



 

 

5 语法:

 

a)数值类型(没有首字母小写,这点要和java区别)

 整数值: Byte, Short, Int, Long (和java类型长度一致, 定义Long类型写法: val num = 32L)

 浮点型: Double, Float(和java类型长度一致,默认类型为Double,定义Float写法: val num = 1.2F)

 布尔: Boolean(true/false)

 字符: Char String

 

  

b) 声明与赋值

 

操作 操作符 案例 说明
声明常量 val

val a:Int  = 3

val a = 3

类型可省略不写,如果不写,则走的是默认类型

 

 val 变量的值只能初始化一次,再次赋值就发生错误,

类似于java中的

staitc final字段

 

声明变量 var var msg="hello"

可以随时修改,

和java变量一样

声明函数

def

 

def 函数名(参数a:类型,参数b:类型):函数返回值类型={函数体}


最后的Int表示方法返回值类型

 

def max(x: Int, y: Int): Int = if(x < y) y else x 

 

调用写法:

max(3,8)  
声明类型 type    
声明类 class    
声明对象 object    

 

 

c) 操作符

 

 

数学操作符 + - * / %
比较操作符 <  <=  >  >=
逻辑操作符 &&   ||
对等操作符 ==    !=
位操作符 & | ^ ~
 

形如 +=的操作符重载,会被认为是赋值操作符而具有最低优先级

m*=n +5 等价于 m*=(n+5)

和java一样

 

  • 大小: 44 KB
  • 大小: 35.5 KB
分享到:
评论

相关推荐

    Scala语法入门.pdf

    Scala语法入门.pdf

    快学 scala 语法大全

    此文档是scala的语法大全,一共分为22章,控制结构,特质,高阶函数,集合,模式匹配,样例类,解析,actor等都包括在内。

    Scala语法简明教程

    Scala语法简明教程.pdf

    Scala基础语法课件汇总整本书电子教案全套课件完整版ppt最新教学教程.pptx

    Scala 基础语法课件汇总整本书电子教案全套课件完整版ppt最新教学教程 以下是根据给定的文件信息生成的相关知识点: Scala 介绍 Scala 是一种多范式的编程语言,由 Federico Mena 和 Martin Odersky 于 2001 年...

    scala 语法参考中文pdf

    Scala 语言规范 2.7版 + Scala 编程 两本中文pdf的电子文档。

    scala基础语法

    本文详细的介绍了scala的基础语法,如果你是一个入门者有没有一个很好的资料为建议你下载

    Notepad++里设置scala的语法高亮_20160323.docx

    notepad++对于scala语言的支持

    spark源码之scala基础语法demo

    scala是一种基于JVM的面向对象的函数编程,scala编程相对于java而言代码整洁、开发效率更高。 其中scala优点主要有: 1:面向对象,可以定义class,通过new调用实例对象使用。 2:兼容java,在scala中可以直接调用...

    Swift和Scala语法的比较

    Swift和Scala语法的比较,包括控制流的结构、表达式、声明、模式和类型。

    stateless-future, 在完全特色的Scala 语法中,异步编程.zip

    stateless-future, 在完全特色的Scala 语法中,异步编程 无状态未来 无状态未来是一组特定于异步编程的领域特定语言,在纯功能。无状态期货为 scala.concurrent.Future 和 scala.async 提供类似的API,除了无状态...

    38_Scala函数式编程

    目前很多大数据组件都是用scala开发,包括Spark, Kafka, Flink,scala的函数式编程思想能够带来比java更高的效率,同时其可读性及难度升高,文档由浅入深介绍Scala的语法、特性等;

    Scala进阶_继承

    scala语言是支持面向对象编程的,我们也可以使用scala来实现继承,通过继承来减少重复代码。 定义语法 scala和Java一样,使用extends关键字来实现继承 可以在子类中定义父类中没有的字段和方法,或者重写父类的方法 ...

    Notepad++里设置scala的语法高亮(包含使用说明)

    Notepad++里对常用的语言都进行了相关的语法高亮提示,但是没有scala语言的,本资源作用于在notepad++中设置scala的语法高亮(包含使用说明)

    scala实战高清讲解

    scala编程进阶过程中不可或缺的书籍之一,详细介绍了scala语言的各种中高级语法,对于初学和高级开发人员有很大帮助

    Scala函数式编程

    1 scala的很多语法糖不理解,不知道为啥要这么写,有种为了这么写的简洁而这么写的感觉 2 scala很多库在设计的时候,不理解原因,包括Option,Collection的很多看似有冗余的地方 3 很多scala的默认写法,不理解 ...

    scala入门语法

    scala入门语法介绍,有助于初学入门的学者,欢迎下载

    scala零基础学习

    个人总结的scala学习资料,部分参考自菜鸟教程,大家可以按照教程从下载安装配置到熟悉语法来学习scala,欢迎下载文档学习

    scala编程入门教材

    本文档是scala的入门学习教材,主要是scala的编程基础和语法

    simulacrum, 在 Scala 中,类型类的第一类语法支持.zip

    simulacrum, 在 Scala 中,类型类的第一类语法支持 三维图形 类型为类岩石,它们在 Scala 中的编码需要很多样板,它不是岩石。 项目之间存在不一致,其中类型类的编码方式不同。 在项目中存在不一致,其中面向对象的...

Global site tag (gtag.js) - Google Analytics