Scala基础

声明变量

主要有两种方式:valvar
val x = 2 * 4 + 1
val命名的变量不可修改,否则会报错。

Scala鼓励开发者使用val,而事实也发现大多数程序并不需要太多的可修改变量var
同时,也可以指定类型:
val x: String = "Hello, Scala"
这里可以看出Scala提供了两种方式供开发选择,在实际使用中,建议在简单的程序中为了代码的简介可以考虑去掉类型,而在相对复杂的大型工程中,建议在某些地方加上类型,提高可读性。

操作符

由于scala中一切操作都是方法调用,当一个方法调用以操作符的形式出现的时候,比如:
a * b表示的其实是a.*(b),即方法的调用默认发生在左操作元(left operand)上。
但是,如果操作符以冒号(:)结尾,则该方法的调用发生在右操作元(right operand)上。
例如1 :: Nil表示的是Nil.::(1)

另外,Scala并未提供++--操作符,因为Int类是不可变的,很难不通过重新赋值(=),而实现++去改变整形的值。

apply方法

在Scala中,有种类似函数的调用方式,如"abc"(2) // 得到C
这个背后的实现原理是调用了apply方法,这里调用的是StringOps中的:
override def apply(index: Int): Char = repr charAt index

小鹏 wechat
公众号:数据Man
0%