scala(3)-编写第一个Hello world!

时间:2021-03-20 09:17:16
转载:http://blog.csdn.net/y3wegy/article/details/8024707

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

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

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

代码如下:

[java] view plain copy print?
  1. package com.scala.demo  
  2.   
  3. object HelloWorld {  
  4.   def main(args:Array[String])  
  5.   {  
  6.     println("Hello world!")  
  7.   }  
  8.   
  9. }  
运行之后就会显示:

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

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

在此补充下:

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

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

[java] view plain copy print?
  1. package com.scala.demo  
  2. import java.util.{Date, Locale}   
  3. import java.text.DateFormat  
  4. import java.text.DateFormat._  
  5.   
  6. object LocalDate {  
  7.   def main(args:Array[String])  
  8.   {  
  9.       val now=new Date  
  10.       val df=getDateInstance(LONG,Locale.FRANCE)  
  11.       println(df format now )  //==df.format(now) ...奇怪的语法  
  12.   }  
  13. }  
       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的对象。