Using the functions such as lambdas, range, map, filter and reduce/fold, calculate the sum of numbers between 1 and 1000 which are divisible by 5 or 3 and print the result.
可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试):
问题:
回答1:
We can do the following:
println((1..1000).filter{ it % 3 == 0 || it % 5 == 0 }.reduce{sum, element -> sum + element})
Instead of reduce we could use sum
as well which would look like this:
println((1..1000).filter{ it % 3 == 0 || it % 5 == 0 }.sum())