【发布时间】:2017-01-28 19:11:23
【问题描述】:
我想在 Java 中创建一个处理线数组列表。不是 java 行。
我的初始化arraylist的代码:
private ArrayList <Line2D> lines;
// constructors
public IrregularPolygon()
{
myPolygon = new ArrayList<Point2D.Double>();
lines = new ArrayList<Line2D>();
}
制作线条并尝试放入arraylist的代码:
public void draw(PApplet marker)
{
if (myPolygon.size() >= 2)
{
for (int i = 0; i < myPolygon.size() - 1; i++)
{
lines[0] = marker.line((float)myPolygon.get(i).getX(), (float)myPolygon.get(i).getY(), (float)myPolygon.get(i + 1).getX(), (float)myPolygon.get(i + 1).getY());
marker.line((float)myPolygon.get(0).getX(), (float)myPolygon.get(0).getY(), (float)myPolygon.get(i + 1).getX(), (float)myPolygon.get(i + 1).getY());
if (myPolygon.size() > 4 && i > 2)
{
myPolygon.remove(myPolygon.get(i));
}
}
}
}
由于某种原因,我不能做 lines[0] = ...。它给了我这个错误:表达式的类型必须是数组类型,但它解析为 ArrayList
怎么了?
【问题讨论】:
-
marker.line(...) 返回什么?
-
画一条线
-
你需要把那些超长的代码行分解成一些变量。这几乎无法阅读。
-
那些变量只是方法的参数
标签: java arraylist processing