如何在Clojure中填充ArrayList?
我试图在Clojure中填充ArrayList,但收到以下错误消息 java.util.ArrayList不能强制转换为clojure.lang.IFn 这是我的密码:如何在Clojure中填充ArrayList?,clojure,arraylist,Clojure,Arraylist,我试图在Clojure中填充ArrayList,但收到以下错误消息 java.util.ArrayList不能强制转换为clojure.lang.IFn 这是我的密码: (ns blackhole-v1.core (:import [java.util ArrayList]) (:import [toxi.geom Vec2D]) (:use [quil.core])) (def particles (new ArrayList)) (defn add-particle []
(ns blackhole-v1.core
(:import [java.util ArrayList])
(:import [toxi.geom Vec2D])
(:use [quil.core]))
(def particles (new ArrayList))
(defn add-particle []
; (particles (.add (new Vec2D (random (width)) (random (height)))))
(doto (particles)
(.add (new Vec2D (random (width)) (random (height))))))
(defn setup []
(smooth)
(background 0)
(add-particle))
(defn draw []
(background 0)
(dotimes [i (.size particles)]
(ellipse (.x (.get particles i)) (.y (.get particles i)) 20 20)))
(defsketch blackhole-v1
:title "black hole v1"
:setup setup
:draw draw
:size [640 480])
你知道我做错了什么吗?你试图将
(粒子)
作为函数调用,但它只是一个简单的变量。而不是(粒子)
使用粒子
(defn add-particle []
; (particles (.add (new Vec2D (random (width)) (random (height)))))
(doto particles
(.add (new Vec2D (random (width)) (random (height))))))
您试图将
(粒子)
作为函数调用,但它只是一个简单的变量。请使用粒子来代替(粒子)
(defn add-particle []
; (particles (.add (new Vec2D (random (width)) (random (height)))))
(doto particles
(.add (new Vec2D (random (width)) (random (height))))))