当def向量时,clojure NullPointerException

pro*_*ocr 2 clojure

出了点问题

(def b [08])
Run Code Online (Sandbox Code Playgroud)

java.lang.NullPointerException:null

(def b [8])
Run Code Online (Sandbox Code Playgroud)

没关系

为什么?

Jon*_*art 7

我对clojure一无所知,但在许多语言中,以零开头的整数文字被解释为八进制(基数为8).8是无效的八进制数字.

来自Try Clojure的快速实验:

> (def b [08])
java.lang.NumberFormatException: Invalid number: 08
> (def b [07])
#'sandbox155/b
Run Code Online (Sandbox Code Playgroud)

看来这确实是你的问题.

不要使用前导零(例如08)启动整数,除非您实际上打算使用八进制表示法.