scala从零开始写hello world
Posted 数据挖掘爱好者社区
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了scala从零开始写hello world相关的知识,希望对你有一定的参考价值。
IDE下载及安装
我们在Scala IDE的官网可以下载到最新版本的Scala IDE for Eclipse(本文采用3.0.2 Release),有两种下载方式可以选择:Bundle方式以及插件方式。其中前者是将Scala插件集成到Eclipse中的捆绑下载,而后者提供在已有Eclipse IDE上安装Scala插件的选择。你可以根据自己的需求以及系统型号来选择。Bundle安装包中包含了以下内容:
Eclipse 4.3.1 (Kepler)
Scala IDE 3.0.2
Scala Worksheet 0.2.1
Play Framework support 0.4.1
m2eclipse-scala Maven connector 0.4.3
access to the full Scala IDE ecosystem
Bundle安装包解压后,打开Eclipse IDE,在Help=》Install New Software中可以看到已安装的插件包含了以上列表中的内容:
如果选择插件方式安装,可以根据上述列表将内容整合到Eclipse中,已达到最好效果。
注意:无论采用哪种方式安装,确保你的节点上有JDK6 or JDK7。
创建工程
安装完毕之后,我们依次File=》New=》New Scala Project,可以新建一个Scala工程,如下图所示:
点击Next,可以配置一下工程属性,我们可以看到工程的依赖项包含了JDK以及SDK:
编写代码
在包中创建Scala代码类,当前我们创建的是一个Scala对象(Object),Scala对象是Scala中类的单例模式,Object标明了在内存中只会存在一个HelloWord实例。
接下来,我们编写main方法,代码如下:
package com.doggie
object HelloWorld {
def main(args: Array[String]): Unit = {
println("hello world")
}
}
我们注意到main方法并没有使用static修饰,而Scala中已经摒弃了static作为方法的关键字。mian方法的入参是一个Array[String],即为一个String数组,这与java中一致。但是Scala中使用方括号而不是尖括号来指定泛型的类型。这有效避免了与尖括号作为方法名称(以后的文章中会涉及)的混淆。
而Scala类中方法的定义形式如下:def 方法名(参数): 返回值类型 = {方法体}
其中参数和返回值的模式为:val: type,这种变量名在前、变量类型在后、相互之间使用冒号隔开的方式将贯穿在Scala的代码中。另外方法和方法体之间使用等号隔开。
返回值的类型为Unit,相当于java中的void。
java中使用print和println方法向控制台输出,地位相当于java中的System.out.print以及System.out.println,实际上通过查阅代码,print和println确实是对System.out中相应方法的调用:
private val outVar = new DynamicVariable[PrintStream](java.lang.System.out)
def out = outVar.value
def println(x: Any) { out.println(x) }
def println(x: Any) = Console.println(x)
另外一个细节是,Scala中将约定每行结尾可以不加分号,这恐怕对写习惯了java代码的coder来说有点不习惯(如果同一行包含两条语句,那么必须用分号隔开)。
如果你观察足够敏锐,当然也会发现Scala连语句缩进也由熟悉的4个空格改为2个空格了。
结果
像运行Java代码一样,右键选择Run as Scala Application,在控制台就会见到熟悉的字样了。
注:本文为转载文章,转自http://blog.csdn.net/asongoficeandfire/article/details/21490101
以上是关于scala从零开始写hello world的主要内容,如果未能解决你的问题,请参考以下文章
深入浅出React Native 3: 从零开始写一个Hello World
从零开始用好 Maven : 从 Hello World 到日常使用