我从根本上不了解arraylist吗?为什么我不能创建类实例的数组列表?
我实际上只是想为我的类“ Vert”创建一个名为“ v1”的数组列表-这是相关代码
class Vert{
float x;
float y;
Vert(float x, float y){
this.x=x;
this.y=y;
}
float getX(){
return x;
}
float getY(){
return y;
}
}
ArrayList<Vert> v1 = new ArrayList<Vert>(new Vert(-10,10),new Vert(10,-10));
我收到错误消息
The constructor "ArrayList<shape_rendering.Vert>(Vert, Vert)" does not exist
似乎是唯一可能存在的构造函数?我在这里做错了什么
:: EDIT :: 所以这是类上下文中的'.add'方法
class Vert{
float x;
float y;
Vert(float x, float y){
this.x=x;
this.y=y;
}
float getX(){
return x;
}
float getY(){
return y;
}
}
class Shape{
ArrayList<Vert> verts;
float h;
Shape(ArrayList<Vert> verts,float h){
this.verts = verts;
this.h = h;
}
ArrayList<Vert> getVerts(){
return verts;
}
}
ArrayList<Vert> v1 = new ArrayList<Vert>();
v1.add(new Vert(-10,0));
v1.add(new Vert(0,-10));
v1.add(new Vert(10,0));
v1.add(new Vert(0,10));
Shape s1 = new Shape(new ArrayList<Vert>(v1),10);
void drawShape(Shape s1){
ArrayList<Vert> v = s1.getVerts();
beginShape();
for(int i = 0;i < v.size();i ++){
vertex(v.get(i).getX(),v.get(i).getY());
}
endShape(CLOSE);
}
void setup(){
size(400,400);
}
void draw(){
background(255);
drawShape(s1);
}
我在所有添加行上都遇到语法错误-
Syntax error on(s), misplaced construct(s)
答案 0 :(得分:2)
执行以下任一操作:
List<Vert> v1 = new ArrayList<Vert>(Arrays.asList(new Vert(-10,10),new Vert(10,-10)));
List<Vert> v1 = List.of(new Vert(-10,10),new Vert(10,-10));