我需要从clojure调用一个java函数,它将一个float数组作为参数.我怎么会在clojure中这样做?
我试过了
(classname/function [0.1f 0.2f])
- 但这不起作用.显然问题在于参数数组.我可以在没有问题的情况下调用类中的其他函数,只要它们不将数组作为参数.
有什么建议?
谢谢
看起来该函数需要一个GLfloats数组,因此快捷方式的构建float-array
可能无法满足您的需求.通用数组构建器函数是
(into-array type aseq)
所以看起来像是这样的:
(def my-array (into-array GLfloat [0.0 0.0 0.0]))
Run Code Online (Sandbox Code Playgroud)
虽然更一般,但是数组更长.
尝试float-array
。从文档中:
user=> (doc float-array)
-------------------------
clojure.core/float-array
([size-or-seq] [size init-val-or-seq])
Creates an array of floats
nil
user=> (float-array [1 2 3])
#<float[] [F@e1666>
user=>
Run Code Online (Sandbox Code Playgroud)