从side-effect认识纯函数

来源:互联网 发布:淘宝hd怎么安装旧版本 编辑:程序博客网 时间:2024/05/16 19:56

纯函数:

不改变“外界的值或者说是状态”,对于同一参数都会有同一结果。在java中我们最常用的具有side-effect的非纯函数就是println

还有一个常用的side effect的函数就是Random,Random每次依靠不同的state来产生不同的值

cala> val rng = new java.util.Randomrng: java.util.Random = java.util.Random@caca6c9scala> rng.nextDoubleres1: Double = 0.9867076608154569scala> rng.nextDoubleres2: Double = 0.8455696498024141




0 0