scala自学日记(3)-编写第一个Hello world!

来源:互联网 发布:印度占星 软件 编辑:程序博客网 时间:2024/05/20 09:07

上一章我们介绍了然后使用解释器来编写简单的scala代码,下面我们就介绍下如何使用eclipse编写一个Hello word!

打开eclipse.新建一个scala Project.第一次新建的话应该在other里面,名称随便,然后新建一个scala Object ,名称叫"HelloWorld".

scala和java不同,文件的名称不必和Object的名称相同.

代码如下:

package com.scala.demoobject HelloWorld {  def main(args:Array[String])  {    println("Hello world!")  }}
运行之后就会显示:

Hello world!
     看到了吧!很简单,里面看不懂的地方在上一章里面都有牵涉到,在看看上一章吧!

http://blog.csdn.net/y3wegy/article/details/8024412

在此补充下:

       scala由于是兼容的,所以scala和java是可以互相访问的,

       Scala的一个强项在于可以很简单的于已有的Java代码交互,所有java.lang中的类都已经被自动导入了,而其他的类需要显式声明导入。
来看看演示代码吧。我们希望对日期进行格式化处理,比如说用法国的格式。
Java类库定义了一系列很有用的类,比如Date和DateFormat。由于Scala于Java能够进行很好的交互,我们不需要在Scala类库中实现等效的代码,而只需直接吧Java的相关类导入就可以了

package com.scala.demoimport java.util.{Date, Locale} import java.text.DateFormatimport java.text.DateFormat._object LocalDate {  def main(args:Array[String])  {      val now=new Date      val df=getDateInstance(LONG,Locale.FRANCE)      println(df format now )  //==df.format(now) ...奇怪的语法  }}
       Scala的import语句看上去与Java的非常相似,但是它更加强大。你可以使用大括号来导入同一个包里的多个类,就像上面代码中第一行所做的那样。另一个不同点是当导入一个包中所有的类或者符号时,你应该使用下划线(_)而不是星号(*)。这是由于星号在Scala中是一个有效的标识符(例如作为方法名称)。这个例子我们稍后会遇到。
       第三行的import语句导入了DataFormat类中的所有成员,这使得静态方法getDateInstance和静态变量LONG可以被直接引用。
在main函数中,我们首先建立了一个Java的Date实例。这个实例默认会包含当前时间。接下来我们一个使用刚才导入的静态函数getDateInstance定义了日期格式。最后我们将使用DataFotmat格式化好的日期打印了出来。
最后一行代码显示了Scala的一个有趣的语法:只有一个参数的函数可以使用下面这样的表达式来表示:
df format now
其实就是下面的这个冗长的表达式的简洁写法
df.format(now)
这看起来是一个语法细节,但是它导致一个重要的后果,我们将在下一节进行说明。
另外,我们还应当注意到Scala中可以直接继承或者实现Java中的接口和类。
看过了上面的Scala例子以及Scala与Java交互的方式,下文将介绍Scala的对象。

原创粉丝点击