gpt4 book ai didi

clojure - clojure 是否具有完全包含的范围功能?

转载 作者:行者123 更新时间:2023-12-04 18:37:09 30 4
gpt4 key购买 nike

Clojure 的 range函数包含来自 start独家在end (如果提供)。核心库中是否有一个函数可以提供完全包含(开始和结束)的范围?

我发现在某些情况下必须调整最终值的代码 - 例如向下而不是向上的范围(例如在列表理解中),可读性要差得多。例如。:

(range n -1 -1)

我只是在文档中遗漏了它,还是有更简洁的方法来做到这一点?

我有点喜欢 guava Range API,所以我一直在寻找具有类似灵活性的东西。

最佳答案

没有标准inclusive-range功能 - 关注 Kevin Ingle的术语。

您可以在 range 之上构建一个:

(defn inclusive-range
([] (range))
([end] (range (inc end)))
([start end] (range start (inc end)))
([start end step] (range start (+ end step) step)))

但是你会遇到不整齐的问题。例如,
(inclusive-range 10 11.5)
;(10 11 12)

不是你想要的,我想。

关于clojure - clojure 是否具有完全包含的范围功能?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33004885/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com