Scala入门教程
《chang哥教你一天搞定Scala》
1 /** 2 * 《chang哥教你一天搞定Scala》 3 * scala是一门多范式编程语言,集成了面向对象编程和函数式编程等多种特性。 4 * scala运行在虚拟机上,并兼容现有的Java程序。 5 * Scala源代码被编译成java字节码,所以运行在JVM上,并可以调用现有的Java类库。 6 */ 7 8 /** 9 * 第一个Scala程序 10 * Scala和Java最大的区别是:Scala语句末尾的分号(;)是可选的! 11 * 编译运行: 12 * 先编译:scalac HelloScala.scala 将会生成两个文件:HelloScala$.class和HelloScala.class 13 * 在运行:scala HelloScala 14 * 输出结果:hello scala!!! 15 * 16 * object HelloScala{ 17 def main(args: Array[String]): Unit = { 18 println("hello scala!!!") 19 } 20 } 21 */ 22 23 /** 24 * Scala基本语法: 25 * 区分大小写 26 * 类名首字母大写(MyFirstScalaClass) 27 * 方法名称第一个字母小写(myMethodName()) 28 * 程序文件名应该与对象名称完全匹配 29 * def main(args:Array[String]):scala程序从main方法开始处理,程序的入口。 30 * 31 * Scala注释:分为多行/**/和单行// 32 * 33 * 换行符:Scala是面向行的语言,语句可以用分号(;)结束或换行符(println()) 34 * 35 * 定义包有两种方法: 36 * 1、package com.ahu 37 * class HelloScala 38 * 2、package com.ahu{ 39 * class HelloScala 40 * } 41 * 42 * 引用:import java.awt.Color 43 * 如果想要引入包中的几个成员,可以用selector(选取器): 44 * import java.awt.{Color,Font} 45 * // 重命名成员 46 * import java.util.{HashMap => JavaHashMap} 47 * // 隐藏成员 默认情况下,Scala 总会引入 java.lang._ 、 scala._ 和 Predef._,所以在使用时都是省去scala.的 48 * import java.util.{HashMap => _, _} //引入了util包所有成员,但HashMap被隐藏了 49 */ 50 51 /** 52 * Scala数据类型: 53 * Scala与Java有着相同的数据类型,下面列出一些Scala有的数据类型。 54 * Unit:表示无值,和其他语言的void一样。 55 * Null:null或空引用。 56 * Nothing:是Scala的类层级的最低端,是任何其他类型的子类型。 57 * Any:是所有其他类的超类。 58 * AnyRef:是Scala所有引用类的基类。 59 * 60 * 多行字符串的表示方法: 61 val foo ="""第一行 62 第二行 63 第三行""" 64 */ 65 66 /** 67 * Scala变量: 68 * 在Scala中,使用关键字“var”