如何从Java类对象连接静态方法?
我试图从这里找到的Vec2D类调用randomVector方法 这是我的密码:如何从Java类对象连接静态方法?,java,clojure,Java,Clojure,我试图从这里找到的Vec2D类调用randomVector方法 这是我的密码: (def particles (new ArrayList)) (defn add-particle [] (dotimes [i 100] (doto particles ;(.add (new Vec2D (random (width)) (random (height)))) (.add (Vec2D/randomVector)))) 到目前为止还不错,但我需要从同一个
(def particles (new ArrayList))
(defn add-particle []
(dotimes [i 100]
(doto particles
;(.add (new Vec2D (random (width)) (random (height))))
(.add (Vec2D/randomVector))))
到目前为止还不错,但我需要从同一个类调用其他方法,如scale和add,我不知道如何在Clojure中实现这一点
以下是我在Java中的实现方式:
Vec2D position = Vec2D.randomVector().scale( 60 ).add( canvasCenter );
任何帮助都将不胜感激请尝试以下代码,java静态方法的调用方式应与
(ClassName/methodName参数)
对于第二个问题,您需要以任何方式定义canvasCenter
where
(defn add-particle []
(dotimes [i 100]
(doto particles
(.add (.scale (Vec2D/randomVector) (float 60)) canvasCenter)))
关于链接方法的编辑可能重复:使用
。
或->
与
一起使用。这是一个重复的问题:哦,谢谢Kugathasan,我在另一篇帖子上找到了答案,有人指出我是重复的,但是我编辑了这个问题,不知道你是否能帮我me@RicardoSancher:您现在可以检查答案吗?还没有,因为我收到以下错误“未找到匹配方法:类toxi.geom.Vec2D的比例”;)@RicardoSanchez,只需检查,scale
方法接受浮点值。@RicardoSanchez:use(float 60.0)
(defn add-particle []
(dotimes [i 100]
(doto particles
(.add (.scale (Vec2D/randomVector) (float 60)) canvasCenter)))