我有一个GUI,它使用参数调用函数brushPoint()。然后,我试图将生成的形状及其对应的颜色保存在二维ArrayList中,但无法弄清楚该怎么做。还是有一种更简单的方法来实现这一目标?
button
数组应该看起来像这样:
ArrayList<ArrayList> coloredShapes = new ArrayList<>();
public void brushPoint(int x, int y, int brushSize, Color color) {
coloredShapes.add(new ArrayList(new Ellipse2D.Double(x - (brushSize / 2),
y - (brushSize / 2), brushSize, brushSize), color));
repaint();
}
答案 0 :(得分:-2)
是的,您可以使用map归档需求。JavaMap具有默认的键,值功能,因此您可以将键用作形状名称,将值用作颜色。请检查以下代码,如果要获取问题,请编写注释或修改您的问题。
Map<String,String> map=new HashMap<String,String>();
map.put("Shape1","Color1");
map.put("Shape2","Color2");
map.put("Shape3","Color3");
// Print output into console
for(Map.Entry m:map.entrySet()){
System.out.println(m.getKey()+" "+m.getValue());
}