当前位置:  开发笔记 > 编程语言 > 正文

(取5(范围))和(范围5)之间有什么区别

如何解决《(取5(范围))和(范围5)之间有什么区别》经验,为你挑选了1个好方法。

我刚刚开始学习Clojure,并且我已经看到了几个使用'take'函数来引用范围.

特别

(take 5 (range))

这似乎是相同的

(range 5)

两者都生成

(0 1 2 3 4)

是否有风格或性能使用其中一个的原因?



1> Derek Slager..:

一般来说,使用(range 5)可能性能更高,我认为它更具惯用性.但是,请记住,这需要人们知道创建时范围的范围.

如果最初的尺寸未知,或者在施工后可能会进行其他一些改造,那么take选择是非常好的.例如:

(->> (range) (filter even?) (drop 1) (take 5))

推荐阅读
mobiledu2402851203
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有