clojure.algo.generic.math-functions/abs 在以下类型上不起作用
clojure.lang.Ratio
clojure.lang.BigInt
java.math.BigDecimal
java.math.BigInteger
我为这些类定义了 defmethods,还有一个为 java.lang.Number,以保留其他数字类原有的功能。
clojure.algo.generic.math-functions/round 在以下类型上不起作用
clojure.lang.Ratio
clojure.lang.BigInt
java.math.BigDecimal
java.math.BigInteger
各种 java 整数类(为什么 round 不能在整数上工作?)
我为这些类型定义了 defmethods,委托给 java.Math.round 处理 double 和 float,并在各种整数类中充当恒等函数,委托给 java.math.BigDecimal#round 处理 BigDecimal,并将 Ratio 转换为 double 或 BigDecimal 并进行舍入。