2015-04-21 3 views

ответ

1

Если вы хотите сохранить двумерную матрицу, чуть ниже кода в порядке :)

(mapv #(vec (.getRow matrix %)) 
     (range (.getRowDimension matrix))) 
+0

спасибо. он отлично работает! :) – Savas

0

Трудно дать прямой ответ, потому что преобразование из двумерной матрицы в одномерный вектор включает в себя выбор способа итерации по матрице. Если мы выбираем слева направо сверху вниз один подход будет выглядеть примерно так:

(->> (for [r (range 0 (.getRowDimension matrix))] 
     (vec (.getRow matrix r)))     
    flatten          
    vec)  ;; this step is optional 

Или если у вас есть только один ряд, то вы можете просто позвонить (vec (.getRow matrix 0))

+0

Спасибо. Да, вы правы, я не уточнил, как перебирать матрицу. Я нуждался в нем без дополнительного шага. :) – Savas