Scala允许你用指令式风格编程,但是鼓励你采用一种更函数式的风格。
命令式的风格,以可变对象、变量可被重新赋值、在数据结构中索引、以及带副作用的方法和控制构造为特征。
函数化的编程风格强调不可变对象、变量可被初始化但不能重新赋值、数据结构转换,以及方法和控制的构造,最终产生一个没有副作用的结果。
如果代码包含了任何var变量,那它大概就是指令式的风格。
如果代码根本就没有var——就是说仅仅包含val——那它大概是函数式的风格。
因此向函数式风格推进的一个方式,就是尝试不用任何var编程。