2010-10-05 75 views

回答

26

試試這個:

(into-array (map double-array [[1 2] [3 4]])) 
+0

謝謝@fogus。這是一個不錯的,優雅的解決方案。我期待完成你的書。 – 2010-10-06 03:07:35

+0

這是可能的最快方式嗎?這是否已經照顧到類型暗示? – 2010-10-06 18:47:49

+0

4年前Upvoted。仍然是一個很棒的答案。 – charleslparker 2017-04-20 21:05:34

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)) 
+0

謝謝@布賴恩。我喜歡你的博客,BTW。 – 2010-10-06 03:10:36