【发布时间】:2018-04-16 16:58:59
【问题描述】:
字节 0xea 等于以 10 为底的 234。在 Python 中,字节使用无符号整数表示,但在 Java 中,它们是 signed, two's complement integers。
例如,在 Java 中,如果我转换 (byte)234,我会得到有符号整数 -22。当我在 MessageDigest 中使用这些字节时,我得到的哈希输出与我在 python 中使用无符号 234 时完全相同。所以我相信这些代表相同的字节。
但是,在 Clojure 中,函数 (byte 234) 应该强制转换为 -22,但它会引发 clojure.lang.RT.byteCast 异常。
如何在 Clojure 中将整数转换为字节?
【问题讨论】:
标签: java python clojure byte twos-complement