randomsize是一个我希望传递给Line类中显示函数的数组,每当我调用p.display(randomsize[])
时,我希望它会将值传递给display
函数。显然还有其他方法可以使这项工作,只是好奇为什么会发生错误?
ArrayList textlines;
int xpos=20;
int ypos=20;
int[]randomsize = new int[4];
void setup() {
size(1200, 768);
textlines = new ArrayList();
randomsize[0]=10;
randomsize[1]=15;
randomsize[2]=20;
randomsize[3]=25;
}
void draw() {
background(100, 100, 100);
for (int i=0; i<textlines.size(); i++) {
Line p=(Line)textlines.get(i);
p.display(randomsize[]);
}
}
void mousePressed() {
textlines.add(new Line(xpos, ypos, thistime));
}
class Line {
int x;
int y;
Line(int xpo, int ypo) {
x =xpo;
y =ypo;
}
void display(int therandom[]) {
fill(50, 50, 50);
rect(width/2, height/2, therandom[0], thatimee[0] );
rect(width/2, height/3, therandom[1], thatimee[1]);
}
}
答案 0 :(得分:3)
不要将randomsize[]
传递给display()
,不要将randomsize
传递给括号。
答案 1 :(得分:0)
void draw() {
background(100, 100, 100);
for (int i=0; i<textlines.size(); i++) {
Line p=(Line)textlines.get(i);
p.display(randomsize); // Remove the brackets from randomsize in the scope of the method draw().
}
}
答案 2 :(得分:0)
这是错误的
p.display(randomsize[]);
void display(int therandom[]) { //here input argument should be an integer array
fill(50, 50, 50);
rect(width/2, height/2, therandom[0], thatimee[0] );
rect(width/2, height/3, therandom[1], thatimee[1]);
}
然后你可以简单地按如下方式调用该方法
p.display(randomsize);