科学健康资讯 · 内容仅供参考,不替代专业诊疗 联系我们|疾病百科
操作系统

数组初始化(数组初始化可以为空吗)

2023-05-02 操作系统 本文链接

函数式编程的fold函数很好用,但是下面的情况好像处理不了。

先介绍fold函数,看下fold函数处理数组求和的方式。

fold([1, 2], 0, (sum, x) => sum+x)

第一个参数,是要求和的数组。

第二个参数,是求和过程的初始值。

第三个参数,是累加过程的具体做法。是个函数,函数第一项是累加和,第二项是当前项。

如果要对数组内容求乘积,换初始值及累加过程,如下:

fold([1, 2], 1, (sum, x) => sum*x)

现在的问题是,如果当sum满足一定条件时,要结束累加过程,直接返回累加值怎么办?

例如:

fold([5, 6, 7], 1, (sum, x) => {

// sum<10,累加,否则,返回

if (sum<10) return sum+x

// else怎么写?返回sum还会继续啊

else return sum

}

有熟悉函数式编程的朋友,欢迎发言。

本文内容仅供健康科普参考,不能替代专业医疗诊断和治疗建议。如有身体不适,请及时就医并遵从医师指导。

相关阅读