目前,{{counted?}} 的文档说明为
bq. 如果 coll 实现了在常数时间内计数,则返回 true
这使得用户误以为可以使用此函数来确定在对任何集合调用 {{count}} 时是否为常数时间操作,而实际上它仅反映了对象是否实现了 {{clojure.lang.Counted}} 接口。由于 {{count}} 特殊处理了平台类型的一小组,因此有一些常见情况,例如数组字符串,它们可以常数时间返回大小,但 {{counted?}} 将返回 false。
*建议:*
bq. 如果 clojure 集合 coll 实现了在常数时间内计数,则返回 true。请注意,即使计数函数可以在常数时间内返回宿主类型的大小(如数组字符串),此函数也将对这些类型返回 false。