Java API我是Clojure interoping,要求我传递一个2d的双精度数组;双[][]。如何在Clojure中创建原始 2d双精度数组?我正在寻找像这样的东西
(double-array-2d [[1 2] [3 4]])
此函数的Java返回类型为double [] []。
答案 0 :(得分:26)
试试这个:
(into-array (map double-array [[1 2] [3 4]]))
答案 1 :(得分:3)
试试这个:
(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))