如何从Java类对象连接静态方法?

如何从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)))) 到目前为止还不错,但我需要从同一个

我试图从这里找到的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)))