clojure中的负十六进制文字

clojure中的负十六进制文字,clojure,Clojure,我发现0xFFFFFFFFFFFFFFFF在clojure中是18446744073709551615N而不是-1(未选中的长0xFFFFFFFFFFFF)可以工作,但会产生运行时成本 还有其他方法吗?我建议只使用未选中的long 运行时开销可能为零,因为JIT编译器应该足够聪明,能够将其优化为恒定负载。您可以在读取时计算该值,以防止其成为运行时成本: #=(unchecked-long 0xFFFFFFFFFFFFFFFF)

我发现
0xFFFFFFFFFFFFFFFF
在clojure中是
18446744073709551615N
而不是
-1
<代码>(未选中的长0xFFFFFFFFFFFF)可以工作,但会产生运行时成本


还有其他方法吗?

我建议只使用
未选中的long


运行时开销可能为零,因为JIT编译器应该足够聪明,能够将其优化为恒定负载。

您可以在读取时计算该值,以防止其成为运行时成本:

#=(unchecked-long 0xFFFFFFFFFFFFFFFF)