`

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
分享到:
评论

相关推荐

    jupyter-Scala_2.11.11_kernel_Windows.zip

    Scala内核支持语法高亮、自动补全、代码执行以及丰富的可视化输出,极大地提高了开发效率。 在使用Scala内核时,需要注意的是,你需要确保系统已经安装了Scala编译器(Scala SDK)和SBT(Scala构建工具)。这些组件...

    flink-1.12.0-bin-scala_2.11.tgz

    Scala是一种多范式的编程语言,与Java API相比,它的语法更加简洁,且更适合函数式编程。 8. **部署与运行**:Flink可以本地运行,也可以在分布式环境中如YARN、Kubernetes或独立集群部署。"bin"目录下通常包含启动...

    flink-1.7.2-bin-scala_2.12.tgz

    5. **SQL支持**:Flink SQL 提供了基于标准SQL的查询接口,使得非Java/Scala背景的开发者也能轻松上手。Flink 1.7.2 对SQL支持进行了改进,增强了语法兼容性,使得分析任务更加直观和便捷。 6. **性能优化**:Flink...

    flink-1.11.1-bin-scala_2.11.tgz

    该版本对SQL标准的兼容性进一步增强,使得熟悉SQL语法的用户能够快速上手。 在容错和调度方面,Flink 1.11.1 提供了一流的故障恢复策略,包括检查点和保存点,确保在节点故障时能够快速恢复。其优化的调度算法能够...

    Scala_中文学习资料_含Scala_2.7.6_API.rar

    这些章节涵盖了Scala的基础概念,如基本语法、类型系统、对象和类、模式匹配、函数和高阶函数等。对于初学者来说,这些章节提供了很好的指导,帮助他们快速上手Scala编程。 "面向Java开发人员的Scala指南-p178.pdf...

    Scala_day01_scala_

    总的来说,"Scala_day01.docx"这份文档应该涵盖了Scala的基本语法、函数式编程特性、并发模型以及与其他Java技术的互操作性等方面的内容。通过深入学习,初学者将能够掌握Scala的核心概念,并开始编写自己的Scala...

    scalaDemo_DEMO_scalademo_scala_

    这些标签暗示了压缩包中的内容可能包括基础语法、类和对象、模式匹配、高阶函数、集合操作、 Actors模型、 Futures和Promises等常见Scala编程主题。 压缩包内的文件名为"scalaDemo",这可能是一个单一的源代码文件...

    flink-1.9.1-bin-scala_2.12.tgz

    使用Flink 1.9.1时,开发者可以通过Scala API来编写数据处理程序,这个版本支持Scala 2.12,意味着你可以利用最新的Scala特性,如更好的类型推断、更友好的语法以及对Java 8特性的更好支持。此外,Flink的DataStream...

    ScalaBooks_TheBook_scala_

    这本书旨在帮助读者快速掌握Scala的核心概念和语法,从而能够有效地利用Scala进行开发工作。Scala是一种多范式编程语言,它融合了面向对象和函数式编程的特点,广泛应用于大数据处理、分布式计算和现代Web应用等领域...

    scala_2.11.8

    解压并安装后,开发者可以通过命令行或者集成开发环境(IDE)如IntelliJ IDEA或Eclipse来使用Scala。 在使用Scala_2.11.8进行开发时,开发者可以利用其丰富的库支持,比如Spark用于大数据处理,Play Framework用于...

    开源高性能RISC-V处理器_Scala_Python_下载.zip

    Python则是一种通用编程语言,因其简洁易读的语法和丰富的库支持,常被用作快速开发和原型设计的工具,特别是在科学计算和数据分析领域。 在RISC-V处理器的开发过程中,Scala可能被用来编写硬件描述语言(HDL),如...

    Scala_Scala编程

    在Scala编程学习路径中,文档列出了从Scala的基本语法、函数式编程、面向对象编程,到高级特性如特质、包和引用的逐步深入学习。例如,学习Scala的第一步可能包括学习如何使用Scala解释器、定义变量和函数,以及编写...

    programming in Scala_ch

    - **可扩展性**: Scala的设计允许用户自定义语法,通过扩展语法可以轻松添加新的类型和控制结构。 #### 入门指南 - **学习使用Scala解释器**: 使用Scala REPL (Read-Eval-Print Loop) 快速实验代码。 - **变量定义*...

    scala教程,tutorialspoint-scala_quick_guide

    - **轻量级匿名函数**: Scala提供了一种简洁的语法用于定义匿名函数,这使得函数式编程变得更加容易。 - **高阶函数支持**: Scala支持高阶函数,即函数可以作为参数传递给其他函数,也可以作为返回值从函数中返回。 ...

    Scala_2.7.6_API_离线精简2009.0915_By_ScalaCn.com

    3. **模式匹配**:Scala的模式匹配是一种强大的语法构造,可以用于数据解析,解构,和switch语句的替代。 4. **高阶函数**:函数在Scala中被视为一等公民,可以作为参数传递,也可以作为返回值。 5. **特质...

    函数式编程工具箱_Scala_JavaScript_下载.zip

    在深入学习这个工具箱之前,你需要先熟悉Scala和JavaScript的基本语法,特别是函数式编程相关的概念。对于Scala,了解如何定义和使用高阶函数、理解不可变数据结构如List、Set、Map,以及掌握模式匹配和类型推断是...

    jdbi-scala_2.9.1-0.2.0.zip

    1. **类型安全的SQL语句**:使用Scala的字符串模板和类型系统,可以创建类型安全的SQL语句,编译时就能检测出SQL语法错误和类型不匹配问题。 2. **自动参数绑定**:通过`@Bind`注解,Jdbi Scala能够自动将方法参数...

    Scala语法入门.pdf

    虽然Scala是基于Java的,但Scala提供了一套与Java不同的语法和类库,这要求学习Scala的开发者了解其与Java的相同点和不同点。 为了使用Scala进行开发,需要进行环境搭建。这包括安装Java开发工具包(JDK)版本1.8或...

    移植到 Scala.js 的 简单HTML5 Canvas游戏_Scala_代码_下载

    1. **Scala.js**: Scala.js是Scala编程语言的一个编译器插件,它允许开发者使用Scala语法编写前端代码,并将其编译成可执行的JavaScript代码。这使得开发者可以利用Scala的强大特性和类型系统来开发Web应用,同时...

    BartoszMilewski的CTforProgrammers的Scala示例代码_Scala_下载.zip

    Scala的语法简洁且富有表达力,支持高阶函数、模式匹配、类型推断等特性,使其成为学习和应用范畴论的理想工具。 **范畴论基础:** 范畴论是一门研究结构和结构之间映射的数学理论,它抽象了数学中的基本概念,如...

Global site tag (gtag.js) - Google Analytics