aget returns 应用于 `make-array` 数组时的 java 对象
aget returns a java object when applied to a `make-array` array
我希望以下代码能够 return (0,0) 值。然而我得到了一个 java 对象
(let [axs (make-array Long 5 5 0)]
(aget axs 0 0))
此外,我在尝试改变索引 (0,0) 时遇到了类型不匹配问题
(let [axs (make-array Long 5 5 0)]
(aset axs 0 0 1))
我希望将 Long[5][5] java 数组初始化为零。我在这里错过了什么?
谢谢
make-array
的第三个参数不会用零初始化您的数组,而是添加第三个数组维度,其大小等于零。结果,数组的大小也为零。要解决此问题,请按如下方式创建数组:
(make-array Long/TYPE 5 5)
这将创建 原始长数组 并将其初始化为零。
我希望以下代码能够 return (0,0) 值。然而我得到了一个 java 对象
(let [axs (make-array Long 5 5 0)]
(aget axs 0 0))
此外,我在尝试改变索引 (0,0) 时遇到了类型不匹配问题
(let [axs (make-array Long 5 5 0)]
(aset axs 0 0 1))
我希望将 Long[5][5] java 数组初始化为零。我在这里错过了什么?
谢谢
make-array
的第三个参数不会用零初始化您的数组,而是添加第三个数组维度,其大小等于零。结果,数组的大小也为零。要解决此问题,请按如下方式创建数组:
(make-array Long/TYPE 5 5)
这将创建 原始长数组 并将其初始化为零。