第一个Scala代码:Hello World demo
工程截图
代码:
package com.zpark.bigdata.scala.testone
object Scala01_HelloWorld {
def main(args: Array[String]): Unit = {
println("Hello World")
}
}
知识点:
Scala源码中包含了main方法,在编译后自动形成 public static void mian
Scala在编译源码时,会生成两个字节码文件,静态main方法执行另一个字节码中的成员main方法
Scala是完全面向对象的语言,那么它就没有静态的语法,只能通过模拟生成静态方法
编译时将当前类生成一个特殊的类–> Scala01_HelloWorld$,然后创建对象来调用这个对象的main方法
一般情况下,加$的类的对象,称之为伴生对象(伴随着这个类所生成的对象)
伴生对象里的内容,都可以通过类名来访问,来模拟java中的静态语法
伴生对象的语法规则 :使用object来声明
java中 :public static void main(String[] arrays){ 方法体 }
Scala中没有public关键字,默认所有访问权限都是公共的
Scala中没有void关键字,它采用特殊的对象来模拟:Unit(是一个类)
Scala中声明方法采用关键字def
java中声明方法格式为:
[修饰符1 修饰符2…]返回值类型 方法名(形式参数列表)
{
程序代码;
[return 返回值];
}
java:main方法后面的小括号是方法参数的列表
Scala中参数列表的声明方式和java不一样
java: String(类型) + 参数名
Scala: 参数名 :+ 类型
java中方法的声明和方法体直接连接
Scala中方法的声明和方法体是通过“=”连接
Scala中将方法的返回值类型放置在方法的后面,用“:”连接
Scala语言输出的三种方式
字符串通过+号连接(类似java)
println(“name=” + name + " age=" + age + " url=" + url)
printf用法 (类似C语言)字符串通过 % 传值。(格式化输出)
printf(“name=%s, age=%d, url=%s \n”, name, age, url)
推荐使用最后这种
字符串插值:通过
引
用
(
类
似
P
H
P
)
p
r
i
n
t
l
n
(
s
"
n
a
m
e
=
引用(类似PHP) println(s"name=
引用(类似PHP)println(s"name=name, age=
a
g
e
,
u
r
l
=
age, url=
age,url=url")
Scala程序开发注意事项(重点)
Scala源文件以 “.scala" 为扩展名
Scala程序的执行入口是main()函数
Scala语言严格区分大小写。
Scala方法由一条条语句构成,每个语句后不需要分号(Scala语言会在每行后自动加分号),这也体现出Scala的简洁性。
如果在同一行有多条语句,除了最后一条语句不需要分号,其它语句需要分号
(尽量一行就写一条语句)。