【发布时间】:2011-04-21 13:23:07
【问题描述】:
我与 Clojure 互操作的 Java API 要求我向其传递一个二维数组;双倍的[][]。如何在 Clojure 中创建 primitive 二维双精度数组?我正在寻找类似的东西
(double-array-2d [[1 2] [3 4]])
此函数的 Java 返回类型为 double[][]。
【问题讨论】:
我与 Clojure 互操作的 Java API 要求我向其传递一个二维数组;双倍的[][]。如何在 Clojure 中创建 primitive 二维双精度数组?我正在寻找类似的东西
(double-array-2d [[1 2] [3 4]])
此函数的 Java 返回类型为 double[][]。
【问题讨论】:
试试这个:
(into-array (map double-array [[1 2] [3 4]]))
【讨论】:
试试这个:
(defn double-array-2d [coll]
(let [w (count coll)
h (apply max (map count coll))
arr (make-array Double/TYPE w h)]
(doseq [x (range w)
y (range h)]
(aset arr x y (double (get-in coll [x y]))))
arr))
【讨论】: