1.变量
Scala中的变量分为两种:可变 var 和 不可变 val 可变var:可以随时修改var声明的变量的值 不可变val:val声明的变量,值不能被修改,否则会报错:error: reassignment to val
scala> var a = 1
a: Int = 1
scala> a = 2
a: Int = 2
scala> val b = 1
b: Int = 1
scala> b = 2
<console>:8: error: reassignment to val
b = 2
^
无论声明val变量,还是声明var变量,都可以手动指定变量的类型 如果不指定,Scala会自动根据值,进行类型推断 val c = 1 等价于 val c: Int = 1
scala> val c = 1
c: Int = 1
scala> val c: Int = 1
c: Int = 1
2.数据类型
Scala中的数据类型可以分为两种,基本数据类型和增强版数据类型。
基本数据类型有:Byte、Char、Short、Int、Long、Float、Double、Boolean
增强版数据类型有:StringOps、RichInt、RichDouble、RichChar等 scala使用这些增强版数据类给基本数据类型增加了上百种增强的功能 例如:RichInt提供的有一个to函数,1.to(10),此处Int会先隐式转换为RichInt,然后再调用其to函数。
scala> 1.to(10)
res2: scala.collection.immutable.Range.Inclusive = Range(1, 2, 3, 4, 5, 6, 7, 8, 9, 10)
scala> 1 to 10
res3: scala.collection.immutable.Range.Inclusive = Range(1, 2, 3, 4, 5, 6, 7, 8, 9, 10)
scala> 1.toString()
res4: String = 1
3.操作符
Scala的算术操作符与Java的算术操作符没有什么区别。
比如+、-、*、/、%等,以及&、|、^、>>、<<等
注意:Scala中没有提供++、–操作符。 我们只能使用+和-,比如count = 1,count++是错误的,必须写做count += 1
scala> var count = 1
count: Int = 1
scala> count++
<console>:9: error: value ++ is not a member of Int
count++
^
scala> count += 1
scala> count
res8: Int = 2