gpt4 book ai didi

clojure - 函数 seq?、sequential 之间有什么区别?和科尔?

转载 作者:行者123 更新时间:2023-12-02 00:02:31 26 4
gpt4 key购买 nike

函数 seq 之间有什么区别?顺序?还有科尔?

我发现一些信息分散在互联网上,但我认为最好将这些信息集中在这里。

最佳答案

seq? 是一个谓词,如果它的参数实现 ISeq 接口(interface),则返回 true,也就是说它提供方法 first,其余缺点。请参阅http://clojure.org/sequences

(seq? [1 2])
false
(seq? (seq [1 2]))
true

sequential? 是一个谓词,如果其参数实现 Sequential 接口(interface),则返回 true。 Sequential 是一个标记接口(interface)(无方法),并且 promise 可以按定义的顺序迭代集合(例如列表,但不是 map )。

(sequential? [])
true
(sequential? {})
false

coll? 是一个谓词,如果其参数实现 IPercientCollection,则返回 true。例如,clojure 数据结构将返回 true,而 native java 数据结构不会:

(coll? {:a 1})
true
(coll? (java.util.HashMap.))
false

关于clojure - 函数 seq?、sequential 之间有什么区别?和科尔?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22439174/

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