Scala 注释使用和 Java 完全一样。
基本语法
(1)单行注释:
// 这是一个注释
(2)多行注释:
(3)文档注释:
2、可变变量和不可变变量
在Java里是分的常量和变量,定义变量的语法是:
变量类型 变量名称 = 初始值 如: int a = 10
定义常量的语法是:
final 常量类型 常量名称 = 初始值 如: final int b = 20
然而在Scala里,变量是分的可变变量和不可变变量,声明可变变量使用的关键字是var,声明不可变变量使用的关键字是val,定义变量的方式和Java也是不同的,类型是写在变量名后面的,语法为:
var 变量名 [: 变量类型] = 初始值 var i:Int = 10
val 常量名 [: 常 量 类 型 ] = 初 始 值 val j:Int = 20
建议:能用常量的地方就不要用变量了。
val a : Int = 10 // 不可变变量 var b : Double = 3.14 // 可变变量
注意:
(1)声明变量时,类型可以省略,编译器自动推导,即类型推导。
(2)类型确定后,就不能修改,说明 Scala 是强数据类型语言。
(3)变量声明时,必须要有初始值。
(4)在声明/定义一个变量时,可以使用 var 或者 val 来修饰,var 修饰的变量可改变,val 修饰的变量不可改。
(5)var 修饰的对象引用可以改变,val 修饰的对象则不可改变,但对象的状态(值) 却是可以改变的。(比如:自定义对象、数组、集合等等)
标识符的命名规则:
(1)Scala中的标识符声明,基本和Java一样,但是细节上会有所变化。
(2)首字符为字母,后续字符任意字母和数字,美元符号,可后接下划线_
(3)首字符为操作符(如+ - * /),也可以
(4)操作符(如+ - * /)不能在标识符的中间和最后
(5)用......包括的任意字符串,即使是关键字(39个)也可以。
推荐用驼峰命名法,见名知意。
打印输出使用的是print、println、printf。
print:直接输出
println:输出后换行,println()相当于print("n")
printf:格式化输出
print("abc") // 直接输出字符串“abc”,输出后不换行
println("hello") // 直接输出字符串“hello”,输出后换行
val name = "Jerry"
printf(s"hello,${name}!")
val name2 = "Tom"
printf(s"hello,${name + "," + name2}!")
5、键盘输入abchello
hello,Jerry!
hello,Jerry,Tom!
在编程中,需要接收用户输入的数据,就可以使用键盘输入语句来获取。在使用前需要先import scala.io.StdIn,再根据要输入的数据的类型来调用对应的方法。 StdIn.readLine()、StdIn.readShort()、StdIn.readDouble() 等等。
println("input name:")
var name = StdIn.readLine()
println("input age:")
var name = StdIn.readInt()
println(name, age)
运算符input name:Lily
input age:18
Lily,18
Scala 运算符的使用和 Java 运算符的使用基本相同,只有个别细节上不同。scala的算术操作符与java的算术操作符也没有什么区别,比如+、-、*、/、%等,以及&、|、^、>>、<<等。
但是,在scala中,这些操作符其实是数据类型的方法,比如1 + 1,可以写做1.+(1)
例如,1.to(10),又可以写做1 to 10
注意:scala中没有提供++、–操作符,我们只能使用+和-,比如num = 1,num ++是错误的,必须写做num += 1。
Java:
==比较两个变量本身的值,即两个对象在内存中的首地址;
equals 比较字符串中所包含的内容是否相同。
Scala:==更加类似于 Java 中的 equals



