文档介绍:北风网项目实战培训Scala与Java的关系是非常紧密的!!因为Scala是基于Java虚拟机,也就是JVM的一门编程语言。所有Scala的代码,都需要经过编译为字节码,然后交由Java虚拟机来运行。所以Scala和Java是可以无缝互操作的。Scala可以任意调用Java的代码。所以Scala与Java的关系是非常非常紧密的。Scala与Java的关系·从Scala官方网站下载,/download/,windows版本的安装包是scala-。·使用下载下来的安装包安装Scala。·在PATH环境变量中,配置$SCALA_HOME/bin目录。·在windows命令行内即可直接键入scala,打开scala命令行,进行scala编程。安装Scala·REPL:Read(取值)->Evaluation(求值)->Print(打印)->Loop(循环)。scala解释器也被称为REPL,会快速编译scala代码为字节码,然后交给JVM来执行。·计算表达式:在scala>命令行内,键入scala代码,解释器会直接返回结果给你。如果你没有指定变量来存放这个值,那么值默认的名称为res,而且会显示结果的数据类型,比如Int、Double、String等等。·例如,输入1+1,会看到res0:Int=2·内置变量:在后面可以继续使用res这个变量,以及它存放的值。·例如,*res0,返回res1:Double=·例如,"Hi,"+res0,返回res2:String=Hi,2·自动补全:在scala>命令行内,可以使用Tab键进行自动补全。·例如,,敲击Tab键,解释器会显示出以下选项,toCharArray,toLowerCase,toString,toUpperCase。因为此时无法判定你需要补全的是哪一个,因此会提供给你所有的选项。·例如,,敲击Tab键,。Scala解释器的使用·声明val变量:可以声明val变量来存放表达式的计算结果。·例如,valresult=1+1·后续这些常量是可以继续使用的,例如,2*result·但是常量声明后,是无法改变它的值的,例如,result=1,会返回error:reassignmenttoval的错误信息。·声明var变量:如果要声明值可以改变的引用,可以使用var变量。·例如,valmyresult=1,myresult=2·但是在scala程序中,通常建议使用val,也就是常量,因此比如类似于spark的大型复杂系统中,需要大量的网络传输数据,如果使用var,可能会担心值被错误的更改。·在Java的大型复杂系统的设计和开发中,也使用了类似的特性,我们通常会将传递给其他模块/组件/服务的对象,设计成不可变类(ImmutableClass)。在里面也会使用java的常量定义,比如final,阻止变量的值被改变。从而提高系统的健壮性(robust,鲁棒性),和安全性。·指定类型:无论声明val变量,还是声明var变量,都可以手动指定其类型,如果不指定的话,scala会自动根据值,进行类型的推断。·例如,valname:String=null·例如,valname:Any="leo"·声明多个变量:可以