定义向量时的clojure NullPointerException
有什么问题吗定义向量时的clojure NullPointerException,clojure,Clojure,有什么问题吗 (def b [08]) java.lang.NullPointerException:null 但是 没关系 为什么?我对clojure一无所知,但在许多语言中,以零开头的整数文本被解释为(基数8)。8是无效的八进制数字 从以下位置的快速实验: 看来这确实是你的问题 不要以前导零开始整数(例如,08),除非你真的想用八进制表示法。@Jonathon Reinhart是正确的,根据LispReader.java:(): 静态模式intPat= Pattern.compile( “
(def b [08])
java.lang.NullPointerException:null
但是
没关系
为什么?我对clojure一无所知,但在许多语言中,以零开头的整数文本被解释为(基数8)。8是无效的八进制数字 从以下位置的快速实验: 看来这确实是你的问题
不要以前导零开始整数(例如,
08
),除非你真的想用八进制表示法。@Jonathon Reinhart是正确的,根据LispReader.java:():
静态模式intPat=
Pattern.compile(
“([-+])(?:(0)|([1-9][0-9]*)|0[xX]([0-9A-Fa-f]+)|0([0-7]+)|([1-9][0-9]?)[rR]([0-9A-Za-z]+)| 0[0-9]+)”代码>
模式中的部分0([0-7]+)
证明了这一点
(def b [8])
> (def b [08])
java.lang.NumberFormatException: Invalid number: 08
> (def b [07])
#'sandbox155/b