运行Scala代码的各种方法

对于本教程中的运行示例,请确保在计算机上安装了最新的Java发行版Scala发行版 ,并且环境变量SCALA_HOME指向scala安装的基本目录,并且%SCALA_HOME%/ bin已添加到PATH变量。 scala-big-

使用Scala REPL

它基本上是命令行交互外壳,称为REPL,是Read-Eval-Print-Loop的简称。

要启动scala REPL,请打开命令提示符,然后只需键入scala。 之后,您将看到新的scala提示符等待您的输入,如下所示

png; base64e0eb56e75df37d2f

现在,您可以在提示符下键入任何Scala表达式或代码,然后按Enter键,您将立即获得输出,如下所示。

png; base64eeb0818d339067c3

使用Scala解释器运行scala脚本

您可以将scala代码保存在扩展名为.scala的文件中(基本上带有任何文件扩展名,但更喜欢使用.scala扩展名),然后运行以提供扩展名的文件名作为scala解释器的参数

使用以下代码创建文件HelloScala.scala

val str = "Hello "+ "Scala "
println("'str' contents : "+str)

现在,我们可以使用如下所示的命令运行该文件

shell> scala HelloScala.scala
'str' contents : Hello Scala

如您所见,我们不需要任何类定义声明。 我们可以将代码放入文件中,并准备运行它。

使用Scala解释器

通常的scala程序包含分布在许多文件中的很多代码块,要运行这些程序,我们需要经历两个阶段,使用scala编译器编译scala源代码,并使用scala解释器运行编译后的字节码。

让我们使用以下代码创建名为Hello.scala的文件

object Hello {
     def main(args:Array[String]):Unit = {
       println("Hello, Scala !! ")
}
}

关于上述程序的少量解释,我们创建了对象Hello,Object是Scala表示静态成员的方法,在它内部,我们有main方法,将param作为字符串数组并返回与Java中的void相同的Unit。 此主要方法更像Java中的一种,但它是Scala版本。

使用scala编译器scalac编译文件如下所示,

shell > scalac Hello.scala

它将在当前目录中创建几个类文件。 为了运行它,我们通过传递类名(不带.scala或.class扩展名)来使用scala解释器(或java解释器,稍后介绍)。 在我们的情况下,我们遵循

shell > scala Hello
Hello, Scala !!

使用Java解释器

由于编译后的Scala代码是字节码,因此我们可以使用Java解释器(标准Java JRE发行版随附的java.exe或java.sh)运行该字节码。 但是为此,我们需要在classpath中放置其他库。

我们只需要添加位于$ SCALA_HOME / lib下的scala-library.jar

要使用Java解释器运行,我们使用以下命令

shell > java -cp $SCALA_HOME/lib/scala-library.jar;.  Hello

使用Scala工作表

这个scala工作表是Scala IDE eclipse的一部分 。 它就像REPL,但是比REPL更方便和强大。

以下是有关scala工作表的官方github repo Wiki的摘录

工作表是一个保存时评估的Scala文件,每个表达式的结果显示在程序右侧的栏中。 工作表就像是关于类固醇的REPL会话,并享受第一类编辑器的支持:完成,超链接,键入时的交互式错误,自动格式化等。

要在scala ide中创建新的scala工作表,请首先创建scala项目,然后右键单击scala项目,然后转到“ 新建> Scala WorkSheet” 。 它将提示输入工作表的名称以及要在其中创建工作表的文件夹。 输入任何名称,接受默认文件夹,然后按Enter。 之后,您将获得如下所示的工作表。 它在代码的右侧(红色标记的一个)提供输出,如下图所示:

png; base645511ddab82462dcf

您可以在对象体内编写任何代码,然后单击保存按钮,然后在代码右侧显示输出:

png; base64af03475578e2f7e0

png; base644b9f329609859c0

参考: 另一个Java Duke博客上的JCG合作伙伴 Abhijeet Sutar提供了多种运行Scala代码的方法

翻译自: https://www.javacodegeeks.com/2013/06/various-ways-to-run-scala-code.html

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值