scala 未完

来源:互联网 发布:国网网络大学怎么考试 编辑:程序博客网 时间:2024/06/03 23:43

对于需要遍历循环的程序,我们可以改写成“函数式”风格来编写。比如用while写的循环,在scala中,使用foreach方法如下:

args.foreach(arg => println(arg)

该表达式,调用args的foreach方法,传入一个参数,这个参数类型也是一个函数(lambda表达式)。这段代码可以再写的精简些,可以利用scala支持的缩写形式,如果一个函数只有一个参数并且只包含一个表达式,那么你无需明确指明参数。 因此代码可以缩写成:

args.foreach(println)


1.for和foreach方法更方便更丰富
2.与java不同的是,scala中所有的基本类型也都是对象
3.任何对象,如果后面使用(),都将调用该对象的apply 方法。 同样,如果对使用()的某个对象赋值,Scala则会将这种赋值转换成对象的update方法
4.scala 中List是不可变的, 且只能包含同类型的数据
5.scala中规定所有以: 开头的操作符都是右操作符
6. tuples 对应属性中的矢量,数据的类型可以不一样,在返回多个结果时非常有用
判断函数式编程和指令的指标就是有没有使用val,所以,尽量多使用val来编程,去掉多余的var,不仅能够使得程序更加简洁,同时还能去掉副作用。

原创粉丝点击